首页 > 解决方案 > 如何为所有环境设置通用阶段管道?

问题描述

每个分支我都有多个工件。已启用持续部署触发器 对于 Dev:_CI_Dev 对于 QA:_CI_QA 对于暂存:_CI_RC

我想设置一个通用阶段(因为跨环境的任务相同),它应该识别源分支并使用相应的工件。

如何仅为 QA 和分期添加批准和门?如何识别触发任务(针对工作)的源分支?我应该运行 powershell 脚本来设置要在任务中使用的变量中的源分支值吗?

在此处输入图像描述

标签: azureazure-devopsdevops

解决方案


如何仅为 QA 和分期添加批准和门?如何识别触发任务(针对工作)的源分支?我应该运行 powershell 脚本来设置要在任务中使用的变量中的源分支值吗?

如果我们想为所有工件源启用,恐怕我们不能只为QAand添加批准和门。stagingContinuous deployment trigger

那是因为批准和门目前没有单独的过滤器,它们依赖于选项Artifact filters

在此处输入图像描述

但是,如果我们设置Artifact filtersforQAstaging,它将过滤掉来自 的构建Dev: _CI_Dev。显然这不符合我们的预期。

要解决这个问题,最简单的方法是克隆当前阶段(虽然它不能完全按照您最初的预期使用一个阶段,但这是目前最好的解决方案。),它也会克隆该阶段的所有任务。Select triggerstageto更改release并设置Artifact filtersforQAstaging

在此处输入图像描述

注意:不要忘记为Dev: _CI_Dev上一阶段添加工件过滤器。


推荐阅读