Azure Devops 变量范围

标签 azure azure-devops azure-pipelines azure-pipelines-release-pipeline

使用 Azure Dev Ops 部署版本时,变量值会在两个阶段之间保留,而不是按预期被覆盖。

我正在使用 azure dev ops 将数据工厂及其资源部署到不同的环境

  • 测试环境
  • UAT 环境

我在“库”中分别为部署的每个阶段定义了 2 个变量组

  • 测试配置和
  • Uat 配置

两者都有一个名称为varDataFactory的变量 - 用于保留数据工厂名称 当链接管道“变量”选项卡中的变量组时,我指定了我期望它执行的阶段。 enter image description here

因此,变量varDataFactory预计在每个阶段具有不同的值。 基本上,第一阶段执行,创建测试数据工厂,但是当 UAT 阶段部署时,它“看到”“varDataFactory”及其旧值 - 用于“测试”的值。

我不知道为什么,也不知道该怎么办。特别是,因为我有另一对用于 key 保管库的变量组(2 个环境的 2 个不同的保管库),并且这些变量组只包含在文件中。请帮忙!!

最佳答案

由于您有 2 个不同的配置组用于 2 个不同的阶段,所以我不明白您所说的覆盖是什么意思。

我在发布管道中使用以下配置尝试了一个简单的命令行任务:

  • 变量组:test-config,变量名称:varDF,值:testdatafactory
  • 变量组:uat-config,变量名称:varDF,值:uatdatafactory

管道变量配置: enter image description here

以下是测试和 UAT 阶段 echo$(varDF) 命令的输出: enter image description here

enter image description here

关于Azure Devops 变量范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74801425/

相关文章:

c# - Azure网站本地调用WebException

azure-devops - 指定 CMMI 流程 Azure DevOps 板中任务的计划(开始日期、完成日期)

c# - VSTS 单元测试未执行

azure-devops - 如何让 Azure DevOps Pipeline 等待外部进程完成?

azure - 从 Azure Databricks 标准层连接到专用终结点上的 Azure SQL 数据库

c# - 应用程序洞察 : Define an email alert for every reported crash

azure - 如何在Terraform中自动配置Azure容器实例和Azure MySql之间的防火墙?

TFS 2017 - 构建代理优先级和顺序

azure-devops - 如何访问 Azure Dev Ops 中的任务输出变量

azure - VS Team Services 在持续集成时给出错误错误 'This version control host is unsupported'