Azure DevOps 传递变量

Azure DevOps Passing Variables

我们正在尝试创建一个 DevOps 管道,我们在第一阶段生成一个字符串,我们希望存储到一个变量中,该变量可以在后续阶段或同一阶段的后续任务中使用,是否有一种方法来做到这一点?为清楚起见,字符串是通过查询外部 api 生成的,其中 returns 是一个字符串值。

希望有道理

提前致谢

年,你应该使用日志记录命令和标记作为输出。 Here you have an example

## azure-pipelines.yml
stages:

- stage: one
  jobs:
  - job: A
    steps:
    - task: Bash@3
      inputs:
          filePath: 'script-a.sh'
      name: setvar
    - bash: |
       echo "##vso[task.setvariable variable=skipsubsequent;isOutput=true]true"
      name: skipstep

- stage: two
  jobs:
  - job: B
    variables:
      - name: StageSauce
        value: $[ stageDependencies.one.A.outputs['setvar.sauce'] ]
      - name: skipMe
        value: $[ stageDependencies.one.A.outputs['skipstep.skipsubsequent'] ]
    steps:
    - task: Bash@3
      inputs:
        filePath: 'script-b.sh'
      name: fileversion
      env:
        StageSauce: $(StageSauce) # predefined in variables section
        skipMe: $(skipMe) # predefined in variables section
    - task: Bash@3
      inputs:
        targetType: 'inline'
        script: |
          echo 'Hello inline version'
          echo $(skipMe) 
          echo $(StageSauce)