AWS CodeDeploy的疑难问题小记
AWS 小记
2023-09-14 09:12:59 时间
AWS官方文档:CodeDeploy AppSpec File reference - AWS CodeDeploy (amazon.com)
appspec.yml中location指定的脚本文件
当CodeDeploy Agent执行location指向脚本文件的时候,有两点:
1. 脚本文件的全路径是什么?
对于Linux系统,CodeDeploy Agent会把所有源文件脚本文件放到一个,形如
/opt/codedeploy-agent/deployment-root/76bdfdd2-91c7-4d88-84e0-6ebe4d25bfa6/d-6BTWU2CDK/deployment-archive
的路径下
“76bdfdd2-91c7-4d88-84e0-6ebe4d25bfa6/d-6BTWU2CDK/”这部分每个人都不一样,不要照抄。
如果appspec.yml中location的值是“a.sh”,那么CodeDeploy Agent就会去找一个全路径为
/opt/codedeploy-agent/deployment-root/76bdfdd2-91c7-4d88-84e0-6ebe4d25bfa6/d-6BTWU2CDK/deployment-archive/a.sh
的脚本去执行。
2. 文件的执行路径是什么?
CodeDeploy Agent执行脚本的执行路径是根目录: /。
可以在脚本开始加入如下命令调整成上述的脚本所在文件夹作为执行路径:
cd `dirname $0`
appspec.yml中的runas
当指定runas的时候,CodeDeploy Agent会以runas的值作为用户,去执行脚本。但是建议在脚本中加入如下一行:
source /etc/profile
去获取环境变量。否则很容易报“命令找不到”这样的错误。
具体source的profile文件,根据实际情况调整。
相关文章
- 基于 Apache Hudi + Presto + AWS S3 构建开放Lakehouse
- AMD专访:收购Pensando不是为了AWS,但是Chiplet可以搞起来
- MySQL Error number: MY-011439; Symbol: ER_KEYRING_AWS_FAILED_TO_ENCRYPT_KEY; SQLSTATE: HY000 报错 故障修复 远程处理
- MySQL Error number: MY-011442; Symbol: ER_KEYRING_AWS_FAILED_TO_ROTATE_CMK; SQLSTATE: HY000 报错 故障修复 远程处理
- AWS 采用自制的 KVM 作为新的管理程序
- 狼来了!AWS宁夏区域可能6、7月份投入运营
- AWS 日本出现大规模故障
- AWS 和 GCP 的 Spark 技术哪家强?
- Google打造云中Hadoop便捷版 强势对抗AWS
- 数据库使用AWS连接本地MySQL数据库(aws调用本地mysql)
- 云端无限存储AWS大规模MySQL数据库管理(aws海量数据mysql)
- 使用AWS同步构建MySQL数据库环境(aws同步mysql)
- 使用AWS管理MySQL,了解相关费用支出(aws mysql 费用)
- 云端AWS和企业级数据库 Oracle的尝试之路(aws oracle)
- 探索Oracle云和AWS的全新世界(oracle云和aws)
- Redis实现从AWS迁移简化(redis迁移aws)