如何使用AWS代码部署和AWS代码管道一次性部署多个git存储库?
我有3个不同的存储库,它们必须部署到同一个自动缩放组(deploymentType为蓝色/绿色)。我已经创建了3个不同的代码管道和一个部署组 这里的问题是,蓝/绿部署将使用启动模板中提供的AMI id创建新的自动缩放组,所以一次实例中只有一个分支 因为所有3个回购代码都是Web应用程序运行所必需的。因为我不想为所有3个回购创建新的自动缩放组。我想这样做: 虚拟分支A: 项目名称如何使用AWS代码部署和AWS代码管道一次性部署多个git存储库?,git,autoscaling,aws-code-deploy,blue-green-deployment,Git,Autoscaling,Aws Code Deploy,Blue Green Deployment,我有3个不同的存储库,它们必须部署到同一个自动缩放组(deploymentType为蓝色/绿色)。我已经创建了3个不同的代码管道和一个部署组 这里的问题是,蓝/绿部署将使用启动模板中提供的AMI id创建新的自动缩放组,所以一次实例中只有一个分支 因为所有3个回购代码都是Web应用程序运行所必需的。因为我不想为所有3个回购创建新的自动缩放组。我想这样做: 虚拟分支A: 项目名称 -repo1项目 -repo2项目 -repo3项目 -appspec.yml -将目标组附加到alb.sh 在app
-repo1项目
-repo2项目
-repo3项目
-appspec.yml
-将目标组附加到alb.sh
在appspec.yml中:
version: 0.0
os: linux
files:
- source: ProjectName/Repo1Project
destination: /var/www/html/Repo1Project
- source: ProjectName/Repo2Project
destination: /var/www/html/Repo2Project
- source: ProjectName/Repo3Project
destination: /var/www/html/Repo3Project
hooks:
BeforeInstall:
- location: Repo1Project/Scripts/pre_install.sh
- location: Repo2Project/Scripts/pre_install.sh
- location: Repo3Project/Scripts/pre_install.sh
timeout: 600
runas: ec2-user
AfterInstall:
- location: Repo1Project/Scripts/post_install.sh
- location: Repo2Project/Scripts/post_install.sh
- location: Repo3Project/Scripts/post_install.sh
timeout: 600
runas: ec2-user
AfterAllowTraffic:
- location: attach-target-group-to-alb.sh
timeout: 600
runas: ec2-user
使用以下命令更新每个文件夹:
仅将其他分支的特定文件/文件夹合并到当前分支
git checkout Repo1Project分支项目名称/Repo1Project
git commit-m“你的评论”
然后将其推送到实际分支b
但我不确定这是否是一种有效的方法,或者是否有其他更好的解决方案。所以,如果有人已经找到了更好的解决方案,就想把它贴在这里