使用AWS CodePipeline中的多个版本进行手动审批

kos*_*kos 6 amazon-web-services aws-codepipeline

我们设置了CodePipeline,以进行构建,部署到QA ECS环境,然后进行手动批准步骤以部署到Prod。

但是,令人困惑的是,当有多个构建相互运行时。多个版本已按顺序部署到质量检查中,但是“批准”按钮似乎一次批准了一个版本,单击时不清楚要批准的版本。

我想做的是批准最新的版本,以防早期版本的问题由更高版本解决。做到这一点的最佳方法是什么?

das*_*mug 5

我有同样的问题。手动审批令人困惑,因为可以将多个管道执行排队,并且很容易丢失事情。我认为我们可以将此归咎于CodePipeline的不良UX。

我解决的解决方法是为同一项目使用两个相同的管道。它们具有相同的源阶段(相同的回购/分支),但部署阶段不同(一个部署到质量检查,一个部署到生产)。没有更多的手动批准阶段。当需要手动释放Prod管道时,如果检测到源(仓库/分支)中的更改,则将QA管道设置为自动执行。

基本上,我们更换了人工审批手动释放。与手动批准不同,手动发布始终从源发布最新信息。

  • 这种方法的问题在于,当您手动部署到 prod 时,它可能会从源代码控制中提取尚未部署到测试并因此未经验证的新更改。如果您引用从 QA 管道构建的工件会更​​好,这样您就不会面临意外发布未经验证的更改的风险 (4认同)

Aar*_*ron 5

您应该将部署和批准操作置于同一阶段。这使您可以准确地批准您测试的内容。为什么?因为在任何给定时间,一个流水线执行都可以处于流水线阶段。

...批准最新版本,以防较早版本存在问题,但后来版本已修复。

如果您想让以后的构建赶上来,请拒绝正在等待批准的早期构建。