【发布时间】:2019-01-15 23:19:56
【问题描述】:
我正在制定一种利用 AWS CodeDeploy 的新部署策略。我从事的项目有许多环境(例如:预生产、生产)和实例(例如:EMEA、US、APAC)。
我的基本脚手架工作正常,但我注意到 BeforeInstall 挂钩中设置的环境变量无法从其他步骤中检索(例如,AfterInstall)。 p>
有没有办法在 AWS CodeDeploy 步骤之间共享环境变量?
appspec.yml 的内容:
version: 0.0
os: linux
files:
- source: /
destination: /tmp/code-deploy
hooks:
BeforeInstall:
- location: utils/delivery/aws/CodeDeploy/before_install.sh
timeout: 300
AfterInstall:
- location: utils/delivery/aws/CodeDeploy/after_install.sh
timeout: 300
ApplicationStart:
- location: utils/delivery/aws/CodeDeploy/application_start.sh
timeout: 300
ValidateService:
- location: utils/delivery/aws/CodeDeploy/validate_service.sh
timeout: 300
我在before_install.sh中设置了一个环境变量:
export ENVIRONMENT=preprod
如果我在 after_install.sh 中引用它:
$ echo $ENVIRONMENT
$
什么都没有。
感谢您对此的帮助!
【问题讨论】:
标签: bash amazon-web-services environment-variables aws-code-deploy