重新运行期间多阶段发布管道变量值覆盖

时间:2021-01-13 02:48:34

标签: azure-devops azure-pipelines azure-pipelines-release-task

在经典发布管道中,当您重新运行发布构建时,会使用最初创建发布时使用的相同变量。在多阶段管道中,即使我们重新运行现有的部署阶段,我也看到该值是新/新选择的。

预期:使用在初始运行中使用的相同变量,而不是使用新变量。

我指的被覆盖的变量是从 Keyvault 中读取的,Keyvault 保存在 Azure DevOps 变量组中。

https://github.com/MicrosoftDocs/azure-devops-docs/issues/7663

1 个答案:

答案 0 :(得分:1)

对变量组进行的任何集中更改,例如变量值的更改或添加新变量,都将自动提供给变量组链接到的所有定义或阶段。在 YAML 管道中,要使用变量组中的变量,您需要在 YAML 文件中添加对该组的引用:

variables:
- group: my-variable-group

因此,每次运行或重新运行 YAML 管道时,它都会从变量组中获取变量。如果对变量组进行了任何更改,管道将获得新的更改。

虽然在经典发布管道中,链接到现有发布的变量组中的变量不会改变,因此当您重新部署管道或阶段时,您仍然可以使用原始变量。

enter image description here

这是经典发布管道和 YAML 管道的默认行为,我们无法更改。