几个月前我已经运行过这个程序,所以我知道它可以工作,但是我创建了一个新的 EC2 实例来部署我的代码并陷入了第一个障碍。
我的部署详细信息运行如下:
- 应用程序停止 - 成功
- 下载捆绑包 - 成功
- 安装前 - 失败
在查看失败的事件后,我得到:
CodeDeploy 代理未在版本相对路径“appspec.yml”的解压缩版本目录中找到 AppSpec 文件。修订版被解压到目录“C:\ProgramData/Amazon/CodeDeploy/57f7ec1b-0452-444e-840c-4deb4566e82d/d-WH9HTZAW0/deployment-archive”,AppSpec 文件是预期的,但在路径“C:\ ProgramData/Amazon/CodeDeploy/57f7ec1b-0452-444e-840c-4deb4566e82d/d-WH9HTZAW0/deployment-archive/appspec.yml”。有关更多信息,请参阅 AWS CodeDeploy Appspec 文档,网址为http://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file.html
问题是,如果我跳到我的 EC2 并复制并粘贴完整路径,果然我看到了 YML 文件,以及我的 S3 存储桶中 ZIP 文件中的文件,因此它们已成功发送到 EC2并解压缩。
所以我确定这不是权限问题,连接已经很清楚了,S3 Bucket、CodeDeploy 和我的 EC2 都很开心。
我在 StackOverflow 上阅读了有关将 AppSpec.yml 文件更改为“appspec.yml”、“AppSpec.yaml”、“appspec.yaml”的各种帖子,但仍然没有任何效果。
有什么明显的尝试吗?