将Symfony 4应用程序部署到谷歌应用程序引擎时出现安全检查程序错误



使用gcloud应用程序部署将Symfony 4应用程序部署到Google应用程序引擎(Flex)。

安装依赖项后生成失败:

Step #1: Executing script cache:clear [OK]
Step #1: Executing script assets:install public [OK]
Step #1: Executing script security-checker security:check [KO]
Step #1: [KO]
Step #1: Script security-checker security:check returned with error code 127
Step #1: !! sh: 1: security-checker: not found
Step #1: !! 
Step #1: Script @auto-scripts was called via post-install-cmd
Step #1: error building image: error building stage: waiting for process to exit: exit status 127
Finished Step #1
ERROR

我的作曲家"剧本"是这样的:

"scripts": {
"auto-scripts": {
"cache:clear": "symfony-cmd",
"assets:install %PUBLIC_DIR%": "symfony-cmd",
"security-checker security:check": "script"
},
"post-install-cmd": [
"@auto-scripts"
],
"post-update-cmd": [
"@auto-scripts"
]
}

在部署和预热prod-env的缓存之前,我运行了composer更新。

为什么构建失败?

您的安全检查设置似乎不正常:

  • 这是相关的配置行:
"security-checker security:check": "script"
  • 这些是显示相应调用失败的日志行:
Step #1: Executing script security-checker security:check [KO]
Step #1: [KO]
Step #1: Script security-checker security:check returned with error code 127

意味着尝试但失败的命令是security-checker security:check。实际故障原因在下一行中显示:

Step #1: !! sh: 1: security-checker: not found

这意味着shell找不到合适的security-checker可执行文件。这可能有多种原因,包括脚本本身或执行环境的问题,例如:

  • 脚本尚未创建
  • 脚本实际上有一个不同的名称
  • 脚本的位置不在执行路径中,因此还需要指定其路径,而不仅仅是其文件名(或者脚本的目录需要包含在执行路径内)

要修复构建,您可以:

  • 注释/去掉相应的配置行
  • 如果配置行错误,请更正它,例如,如果它与实际环境不匹配
  • 调整环境以匹配配置(如果配置对于预期用途是正确的)

相关内容

  • 没有找到相关文章

最新更新