首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >脚本在指定的位置不存在-x- CodeDeploy问题

脚本在指定的位置不存在-x- CodeDeploy问题
EN

Stack Overflow用户
提问于 2020-08-02 21:44:54
回答 1查看 914关注 0票数 0

作为通过CodeDeploy部署的一部分,我正在执行示例powershell脚本。以下是appsec.yml的内容

代码语言:javascript
复制
version: 0.0
os: windows
files:
  - source: \
    destination: C:\Users\Administrator\testapp
hooks:
  ApplicationStop:
    - location: C:\Users\Administrator\testapp\stop.ps1
      timeout: 300

  BeforeInstall:
    - location: C:\Users\Administrator\testapp\copy.ps1
      timeout: 300

  ApplicationStart:
    - location: C:\Users\Administrator\testapp\start.ps1
      timeout: 300

  ValidateService:
    - location: C:\Users\Administrator\testapp\validate.ps1
      timeout: 300

但是,当我使用代码部署开始部署时,会出现以下错误:

代码语言:javascript
复制
Error code
ScriptMissing
Script name
C:\Users\Administrator\testapp\copy.ps1
Message
Script does not exist at specified location: C:/ProgramData/Amazon/CodeDeploy/85c23e0a-90f5-474e-9675-df3301a3b8f9/d-CODHEXCG5/deployment-archive/C:/Users/Administrator/testapp/copy.ps1

当我检查位置C:/ProgramData/Amazon/CodeDeploy/85c23e0a-90f5-474e-9675-df3301a3b8f9/d-CODHEXCG5/deployment-archive,时,我看到工件是从S3桶中下载的。

工件目录结构:

代码语言:javascript
复制
+ deployment-archive
  + scripts
     - copy.ps1
     - stop.ps1
     - start.ps1
     - validate.ps1
  - appsec.yml

我认为文件没有从Deployment复制到appsec文件中提到的目的地。但是为什么它没有被复制,无法理解。请指点

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-03 01:43:58

您的files部分是完全正确的(请参阅AppSpec‘文件’部分),问题在于hooks部分中的脚本。

在这份正式文档AppSpec‘钩子’部分中,它说:

您在“钩子”部分中指定的脚本位置相对于应用程序修订包的根。

因此,您需要将绝对路径更改为相对路径,例如:

代码语言:javascript
复制
hooks:
  ApplicationStop:
    - location: scripts\stop.ps1
      timeout: 300

您的错误日志还告诉您相同的问题:

脚本不存在于指定位置: C:/ProgramData/Amazon/CodeDeploy/85c23e0a-90f5-474e-9675-df3301a3b8f9/d-CODHEXCG5/deployment-archive/C:/Users/Administrator/testapp/copy.ps1

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63221342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档