Azure 管道矩阵变量

Posted

技术标签:

【中文标题】Azure 管道矩阵变量【英文标题】:Azure Pipelines Matrix variables 【发布时间】:2019-11-05 22:29:01 【问题描述】:

谁能解释我如何从这个矩阵作业设置中访问变量build

parameters:
  # job ---
  ...
  configurations: [Release, Debug]
  ...

jobs:
  - job: nightly
    displayName: Nightly
    strategy:
      matrix:
        $ each configuration in parameters.configurations :
          $ configuration :
            build: $ configuration  # !PARAMETER/VARIABLE FOR JOB SET HERE!
            $ if ne(configuration, 'Release') :
              dependsOn: Release
    pool:
      vmImage: $ parameters.image 
    timeoutInMinutes: $ parameters.timeoutInMinutes 
    steps:
      - powershell: Write-Host $ parameters.build 
        displayName: 'Write Configuration: $ parameters.build '

jobs powershell 任务显示Write Configuration: 所以变量为空?

【问题讨论】:

这个变量是什么?他在哪里配置的? 在矩阵迭代中,构建(参数?)被设置,然后在powershell步骤中使用?我不确定如何使用矩阵中的任何内容?实际上这个 yaml 没有编译,但是当我使用 $ parameters.build 它也是空的。 好的,现在我明白了,检查我的答案:) 【参考方案1】:

您可以像访问每个常规变量一样访问该变量:

$(build)

所以在你的管道中:

- powershell: Write-Host $(build)

【讨论】:

是的,我自己发现我使用的是$ parameter 语法而不是$(variable) 语法!

以上是关于Azure 管道矩阵变量的主要内容,如果未能解决你的问题,请参考以下文章

使用调度程序和变量组运行 Azure DevOps CI 管道

如何使用 Azure REST API 从管道中获取所有变量?

从 azure devops 管道更新变量组

枚举Azure管道中的秘密变量

Azure 发布管道 - “触发”分支名称的变量

azure管道:访问机密变量