Azure DevOps Pipeline - 带管道变量的条件表达式
Azure DevOps Pipeline - condition expression with pipeline variable
我需要根据 管道变量 (不是 YAML 中定义的变量)使我在 DevOps YAML 管道中的阶段依赖或不依赖。
我试过这样的事情:
- stage: 'test'
${{ if eq(variables.dependent_stages, 'true') }}:
dependsOn: [dev]
${{ elseif eq(variables.dependent_stages, 'false') }}:
dependsOn: []
jobs:
- deployment: approve
environment: TEST
但是它始终将其视为“真”,因为它是变量的默认值。
如何让它反映管道变量的实际值?
不是我希望的解决方案,但是通过参数解决了:
parameters:
- name: dependent_stages
displayName: Should environments depend on each other?
type: string
default: No
values:
- No
- Yes
...
- stage: 'test'
${{ if eq(parameters.dependent_stages, 'Yes') }}:
dependsOn: [dev]
${{ elseif eq(parameters.dependent_stages, 'No') }}:
dependsOn: []
我需要根据 管道变量 (不是 YAML 中定义的变量)使我在 DevOps YAML 管道中的阶段依赖或不依赖。
我试过这样的事情:
- stage: 'test'
${{ if eq(variables.dependent_stages, 'true') }}:
dependsOn: [dev]
${{ elseif eq(variables.dependent_stages, 'false') }}:
dependsOn: []
jobs:
- deployment: approve
environment: TEST
但是它始终将其视为“真”,因为它是变量的默认值。
如何让它反映管道变量的实际值?
不是我希望的解决方案,但是通过参数解决了:
parameters:
- name: dependent_stages
displayName: Should environments depend on each other?
type: string
default: No
values:
- No
- Yes
...
- stage: 'test'
${{ if eq(parameters.dependent_stages, 'Yes') }}:
dependsOn: [dev]
${{ elseif eq(parameters.dependent_stages, 'No') }}:
dependsOn: []