部署依赖条件跳过azure管道



创建了一个管道。有两个阶段。二级作业的部署有一个由一级变量导出的条件。管道示例如下

pool:
vmImage: 'ubuntu-latest'
stages:
- stage: Stage
jobs:
- deployment: Staging
displayName: Stage the WebApp
environment: stg
strategy:
runOnce:
deploy:
steps:
- bash: echo "##vso[task.setvariable variable=myStageOutputVar;isOutput=true]true"
env:
myVar: 'this is a stage output var'
name: printvar
- stage: Swap
dependsOn: Stage
condition: eq(dependencies.Stage.Staging.outputs['Staging.printvar.myStageOutputVar'], 'true')
variables:
myVarfromStage: $[ stageDependencies.Stage.Staging.outputs['Staging.printvar.myStageOutputVar'] ]
jobs:
- deployment: Production
displayName: Swap to production
environment: adt
strategy:
runOnce:
deploy:
steps:
- script: echo $(myVarfromStage)

Swap阶段每次都被跳过。

是否需要在条件下进行更改?

我想你可以在这个文档中查找表达式。

您需要按如下方式编辑条件。Staging.Staging

- stage: Swap
dependsOn: Stage1
condition: eq(dependencies.Stage1.outputs['Staging.Staging.printvar.myStageOutputVar'], 'true')

最新更新