单个 CodeCommit 存储库可以部署到多个环境吗?
Can a single CodeCommit repo deploy to multiple environments?
我有一个使用 AWS CodeCommit、CodePipeline 和 CodeDeploy 的简单 Web 应用程序。每当更改完成并推送到 git 时,CodePipeline 就会启动并将代码部署到 QA 环境 - WINDOWS。
现在我想设置一个从同一个存储库到生产环境的手动触发部署。但是源代码位置不一样。另外我可能想使用不同的 AfterInstall bat 文件。
在这种情况下我怎么能有不同的 appspec.yml 或 afterinstall.bat 文件。或者还有其他方法吗?
这是一个应该有效的方法:
- 在您的存储库中有两个文件 appspec_qa.yml 和 appspec_prod.yml,每个文件都具有该阶段所需的配置。
- 有两个 CodeBuild 步骤,每个步骤生成一个单独的工件,各自的 appspec_*.yml 重命名为 appspec.yml
- 有两个 CodeDeploy 应用程序,一个用于 qa,一个用于 prod。
- 有一个管道将 qa 工件部署到 qa CodeDeploy 应用程序,并将 prod 工件部署到 prod CodeDeploy 应用程序。
- 在 qa 和 prod 阶段之间进行手动批准
我有一个使用 AWS CodeCommit、CodePipeline 和 CodeDeploy 的简单 Web 应用程序。每当更改完成并推送到 git 时,CodePipeline 就会启动并将代码部署到 QA 环境 - WINDOWS。 现在我想设置一个从同一个存储库到生产环境的手动触发部署。但是源代码位置不一样。另外我可能想使用不同的 AfterInstall bat 文件。 在这种情况下我怎么能有不同的 appspec.yml 或 afterinstall.bat 文件。或者还有其他方法吗?
这是一个应该有效的方法:
- 在您的存储库中有两个文件 appspec_qa.yml 和 appspec_prod.yml,每个文件都具有该阶段所需的配置。
- 有两个 CodeBuild 步骤,每个步骤生成一个单独的工件,各自的 appspec_*.yml 重命名为 appspec.yml
- 有两个 CodeDeploy 应用程序,一个用于 qa,一个用于 prod。
- 有一个管道将 qa 工件部署到 qa CodeDeploy 应用程序,并将 prod 工件部署到 prod CodeDeploy 应用程序。
- 在 qa 和 prod 阶段之间进行手动批准