我有一个带有两个实例的 AWS。我已将 CodeDeploy 配置为在所有实例上自动部署我的项目。
在appspec.yml
我有那个部分:
hooks:
AfterInstall:
- location: codedeploy_scripts/deploy_afterinstall
timeout: 300
runas: root
deploy_afterinstall
是一个简单的 bash 脚本。有时其中的某些命令会失败。例如这个更新/安装作曲家依赖的命令。
if [ -f "composer.lock" ]; then
composer update -n
else
composer install -n
fi
但 CodeDeploy 忽略此脚本中的任何错误,并始终说部署成功。我怎样才能改变这种行为?当挂钩中的某些命令未成功完成时,我希望部署失败,并在部署控制台或日志中查看错误。