0

使用 Bitbucket AWS CodeDeploy 插件部署时如何生成“.env”?

我看到bitbucket-pipelines.yml可以从 bitbucket 环境变量生成 .env,但是,如何将它与 Bitbucket AWS CodeDeploy 附加组件联系起来?

appspec.yml- 可以在部署时触发脚本,但我怎样才能让它从 bitbucket 环境变量中获取 .env?

4

2 回答 2

0

查看文档,BitBucket 应该使环境在构建环境中可用,并且您应该能够直接在您运行的脚本中访问它们,appspec.yml就像您访问任何其他环境变量一样。

例如,如果我们有这样的 appspec:

hooks:
   AfterInstall:
     - location: scripts/runTests.sh
       timeout: 180

您可以像这样访问环境变量scripts/runTests.sh

# scripts/runTests.sh
echo "$BITBUCKET_BUILD_NUMBER"
# Or, use in some other valid way in your script
于 2018-05-15T18:58:29.357 回答
0

BitBucket不应该创建.env,这个服务应该对生产一无所知.env。相反,生产.env应该放在安全的AWS S3 bucket地方,只有AWS CodeDeploy脚本可以把它放在实例上。

它会像这样被复制

sudo aws --region us-east-2 s3 cp "s3://${S3_NAME}/prod.env" "${EC2_DIRECTORY}/.env"
于 2018-12-02T08:18:58.813 回答