我正在尝试在Azure DevOps(内部)中配置发布管道以支持git-flow策略。我想要达到的目标:
因此,当我执行git-flow“开始发行”时,该软件可用于测试/质量检查,而当我“完成发行”时,则可供用户使用。
我的构建管道工作正常,它由release分支触发,并以Publish Artifact任务结束。我的发布管道使用了此工件,并具有质量检查和生产阶段,但生产阶段从未触发。对于质量检查,我有一个用于“ release / *”的工件过滤器,而在生产中则有一个“主”过滤器。
有没有办法在提交“ master”时触发我的第二个发布阶段?
答案 0 :(得分:1)
不幸的是,作为一般流程这不会起作用。当您承诺发布分支时,您的建筑物将从发布分支开始。当您提交到master分支时,您将不得不再次构建以便从master提交定向工件。
您要么需要对以下内容感到满意:
答案 1 :(得分:1)
对于您的问题,如果要基于对Build Artifact源中不同分支的提交来自动触发部署到不同阶段,则不可行。
同意Bevan的意见,如果您只想使用构建工件作为发布管道的源,则可以为Pre-deployment approvals
和QA
阶段设置Production
。如果您希望将release
分支中的构建工件部署到QA
阶段,则可以批准QA
阶段的部署。如果您希望将master
分支中的构建工件部署到Production
阶段,则可以在Production
阶段批准部署。
您还可以创建两个构建管道,一个用于master分支,一个用于release分支。然后为两个不同的构建工件创建单独的发布管道。一个用于部署到QA
阶段,另一个用于部署到Production
阶段。