需要使用变量组作为 Azure 管道中的输入参数

问题描述

我对 Azure 管道非常陌生,并且在一周前遇到了一个问题。 我有一个必须在管道上执行的 Selenium c# 测试用例。 我必须使用变量组作为我的测试用例的输入参数。 所以,我创建了 appsettings.json 文件 appsettings.json

在我的 YAML 代码中,我能够读取变量组,但我无法在管道中使用它的值。怎么做?

解决方法

要使用变量组中的变量,您需要在 YAML 文件中添加对该组的引用:

variables:
- group: my-variable-group

此后变量组中的变量可以在您的 YAML 文件中使用。

如果您同时使用变量和变量组,则必须对单个(非分组)变量使用 name/value 语法:

variables:
- group: my-variable-group
- name: my-bare-variable
  value: 'value of my-bare-variable'

要引用变量组,您可以使用宏语法或运行时表达式。在本例中,组 my-variable-group 有一个名为 myhello 的变量。

variables:
- group: my-variable-group
- name: my-passed-variable
  value: $[variables.myhello] # uses runtime expression

steps:
- script: echo $(myhello) # uses macro syntax
- script: echo $(my-passed-variable)

您还可以在同一管道中引用多个变量组,并将现有 Azure Key Vault 链接到变量组并将选择性保管库机密映射到变量组。

查看 Add & use variable groups 以获取更多信息和示例。有关详细演练,请参阅 this 博文。