单个CodeCommit仓库可以部署到多个环境吗?

时间:2017-09-07 22:12:28

标签: windows amazon-ec2 aws-code-deploy aws-codepipeline aws-codecommit

我有一个简单的Web应用程序,它使用AWS CodeCommit,CodePipeline和CodeDeploy。当完成更改并推送到git时,CodePipeline会启动并将代码部署到QA环境 - WINDOWS。 现在我想要从同一个存储库到生产环境设置一个手动触发的部署。但是源代码位置不一样。另外我可能想要使用不同的AfterInstall bat文件。 在这种情况下,如何才能拥有不同的appspec.yml或afterinstall.bat文件。或者还有其他方法吗?

1 个答案:

答案 0 :(得分:1)

这是一种应该有效的方法:

  1. 您的资源库中有两个文件appspec_qa.yml和appspec_prod.yml,每个文件都包含该阶段所需的配置。
  2. 有两个CodeBuild步骤,每个步骤都会生成一个单独的工件,相应的appspec _ *。yml重命名为appspec.yml
  3. 有两个CodeDeploy应用程序,一个用于qa,一个用于prod。
  4. 有一个管道将qa工件部署到qa CodeDeploy应用程序,并将prod工件部署到prod CodeDeploy应用程序。
  5. 在qa和prod阶段之间获得手动批准