我在 AWS 中有两个实例。一种用于生产,一种用于认证。我使用 CodeDeploy 自动部署。我在 BitBucket 上有两个分支,master 和 homolog。当我在同源部署中提交时,必须转到同源实例,如果我在主部署中进行合并,则必须处于生产阶段。
要将 Bitbucket 自动部署到 AWS,有一系列配置部署详细信息的文件。这些文件之一是 appspec.yml。根据 AWS,只能有一个 appspec.yml 文件。
此基本表单文件具有以下结构:
version: 0.0
os: linux
files:
- source: /
destination: /var/www/html
hooks:
AfterInstall:
- location: deploy-scripts/install_dependencies.py
timeout: 300
runas: root
问题是对于每个实例我都有一个目标文件夹。
如果我在同源实例上进行部署,目标文件夹应该是var/www/html,而对于生产实例,它应该是var/www/html/test/
我试图这样做:
version: 0.0
os: linux
files:
- source: /
destination: deploy-scripts/destination.py
hooks:
AfterInstall:
- location: deploy-scripts/install_dependencies.py
timeout: 300
runas: root
这就是destination.py:
if os.environ['APPLICATION_NAME'] == 'ahimsa-store-homolog':
return '/var/www/html/'
elif os.environ['APPLICATION_NAME'] == 'ahimsa-store':
return '/var/www/html/teste/'
上述选项不起作用。我怎样才能做到这一点?