【发布时间】:2019-03-07 18:59:35
【问题描述】:
appspe.yml 脚本:
version: 0.0
os: linux
files:
- source: /
destination: /home/ubuntu/
permissions:
- object: /home/ubuntu/
owner: root
group: root
mode: 777
hooks:
BeforeInstall:
- location: scripts/install_dependencies.sh
timeout: 300
runas: root
- location: scripts/start_server.sh
timeout: 300
runas: root
ApplicationStop:
- location: scripts/stop_server.sh
timeout: 300
runas: root
很遗憾,它没有将文件复制到 /home/ubuntu/ 目录。有了这个,我在通过 codedeploy 部署时遇到以下错误
LifecycleEvent - BeforeInstall 脚本 - 脚本/install_dependencies.sh 脚本 - 脚本/start_server.sh [stderr]cp:无法统计“脚本/gunicorn.service”:没有这样的文件或 目录 [stderr] 无法启动 gunicorn.service: Unit gunicorn.service 未找到。 [stderr]执行操作失败:否 此类文件或目录 [stderr] 无法重新启动 gunicorn.service: 未找到单位 gunicorn.service。 [stderr]cp:无法统计 'scripts/LIMA':没有这样的文件或目录 [stderr]ln:创建失败 符号链接“/etc/nginx/sites-enabled/LIMA”:文件存在 [stderr]错误:端口错误
这里出了什么问题?
【问题讨论】:
-
部署新代码时如何覆盖现有文件?我在 appspec.yml 文件部分添加了
overwrite:yes,但没有用 -
您可以将脚本发布到要点吗?你想安装独角兽和nginx吗?看起来依赖脚本没有运行并导致其他脚本失败。
标签: amazon-web-services aws-code-deploy aws-codepipeline