ADO 管道 - 如何在运行时评估变量组的值
ADO pipelines - how to evaluate the value of a variable group at runtime
-
azure-devops
-
azure-pipelines
-
azure-pipelines-release-pipeline
-
azure-pipelines-yaml
-
azure-yaml-pipelines
我有一个变量组,我想在其中 运行 一个表达式。也就是说,我想在 运行 时间计算变量组的变量内容。
Variables_General 有一个名为 isMain 的变量,其内容为 $[contains(variables['Build.SourceBranch'], 'refs/heads/develop')]
variables:
- group: Variables_General
...
condition: variables.isMain
但这没有按预期工作。我尝试了各种双引号组合,使用 $[] 和 $()。我在变量值和变量的引用方式上都试过了。它做两件事之一,说它不期待“$”或者只是检测到变量有内容,因此是“真”
在 运行 时间计算的变量组变量值中包含代码的正确方法是什么?
Yaml 引用变量组,但无法解析表达式。 Yaml 将变量组中的 $[contains(variables['Build.SourceBranch'], 'refs/heads/develop')]
视为字符。
您可以在以下网站提交建议:
https://developercommunity.visualstudio.com/content/idea/post.html?space=21
目前可以在变量中单独定义isMain
变量:
variables:
- group: Variables_General
- name: isMain
value: $[contains(variables['Build.SourceBranch'], 'refs/heads/master')]
steps:
- script: echo Hello!
condition: eq(variables.isMain, true)
azure-devops
azure-pipelines
azure-pipelines-release-pipeline
azure-pipelines-yaml
azure-yaml-pipelines
我有一个变量组,我想在其中 运行 一个表达式。也就是说,我想在 运行 时间计算变量组的变量内容。
Variables_General 有一个名为 isMain 的变量,其内容为 $[contains(variables['Build.SourceBranch'], 'refs/heads/develop')]
variables:
- group: Variables_General
...
condition: variables.isMain
但这没有按预期工作。我尝试了各种双引号组合,使用 $[] 和 $()。我在变量值和变量的引用方式上都试过了。它做两件事之一,说它不期待“$”或者只是检测到变量有内容,因此是“真”
在 运行 时间计算的变量组变量值中包含代码的正确方法是什么?
Yaml 引用变量组,但无法解析表达式。 Yaml 将变量组中的 $[contains(variables['Build.SourceBranch'], 'refs/heads/develop')]
视为字符。
您可以在以下网站提交建议:
https://developercommunity.visualstudio.com/content/idea/post.html?space=21
目前可以在变量中单独定义isMain
变量:
variables:
- group: Variables_General
- name: isMain
value: $[contains(variables['Build.SourceBranch'], 'refs/heads/master')]
steps:
- script: echo Hello!
condition: eq(variables.isMain, true)