CodeDeploy Script在指定位置不存在 - appspec.yml

时间:2016-05-12 15:30:42

标签: amazon-web-services deployment amazon-ec2 aws-code-deploy

我正在尝试使用CodeDeploy在AWS上部署我的应用程序。

这是我的appspec.yml文件:

version: 0.0

os: linux

files:
  - source: /
    destination: /home/ec2-user/todos // <== this dir already exists in my instance

hooks:
  ApplicationStop:
    ...

  BeforeInstall:
    - location: scripts/prerequisites
      timeout: 1200
      runas: root

  AfterInstall:
    ...
  ApplicationStart:
    ...
  ValidateService:
    ...

我一直收到以下错误:

  

错误代码:ScriptMissing

     

脚本名称:脚本/先决条件

     

消息:指定位置不存在脚本:   的/ opt / codedeploy剂/部署根/ 2e557520-7ffe-4881-8c7c-991952c56e05 / d-UWR3Z01FE /部署存档/脚本/先决条件

     

Log Tail:LifecycleEvent - BeforeInstall

我的脚本存储在一个名为“scripts”的文件中,该文件位于我的应用程序的根目录中。

我错过了什么?或做错了?如果有人能帮助我朝着正确的方向前进,我将非常感激!

1 个答案:

答案 0 :(得分:4)

好的,似乎问题只是一个错字。我忘了将文件扩展名写入我的脚本(.sh)

像这样:

BeforeInstall:
    - location: scripts/prerequisites.sh // <--- this fixed it
      timeout: 1200
      runas: root

希望它可以帮助任何人。