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

问题描述

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

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

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

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

解决方法

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

variables:
- group: my-variable-group

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

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

enter image description here

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...