AWS CodeDeploy 部署在 ApplicationStop 事件中失败

Avi*_*hen 2 aws-code-deploy

我正在尝试使用 EC2 设置从 GitHub 到 AWS 的自动部署。我使用 CodeDeployServiceRole自动策略设置角色

按照教程:使用 AWS CodeDeploy 从 GitHub 部署应用程序后,我的部署在 ApplicationStop 事件中失败,在尝试几分钟后,错误代码为 HEALTH_CONSTRAINT。我不确定如何解决问题/在哪里查看。

小智 7

检查最新日志/var/log/aws/codedeploy-agent

如果您的部署在事件中失败ApplicationStop,那么问题很可能是您的 EC2 实例没有必要的权限来从 S3 存储桶获取工件。

  1. 您的 EC2 实例必须附加一个 IAM 角色,以赋予其足够的权限从 S3 存储桶下载工件
  2. 您的 EC2 必须IAM 角色启动。因此,在将角色附加到实例后,您可能必须重新启动实例。

从您的配置来看,您似乎已提供CodeDeploy在 EC2 上执行某些操作的权限。您可能需要检查您的 EC2 是否也具有从 S3 存储桶下载软件包的必要权限。


Ker*_*iam 5

这些是有关如何导航的一些提示

  • 在评论中提到的日志 /var/log/aws/codedeploy-agent

  • 由于 AWS 支持建议您可以添加一次,--ignore-application-stop-failures 因此如果上次失败,它将跳过该步骤并查看?因为应用程序停止生命周期事件使用appspec上次成功构建中的文件,因此如果该文件以某种方式损坏,则此步骤将在以下构建中失败

  • (不推荐)您可以删除文件,CodeDeploy 使用该文件在以下路径中跟踪上一次成功部署 /opt/codedeploy-agent/deployment-root/deployment-instructions/