Azure devops 如何在Azure开发人员Ops中访问任务输出变量
我试图使用新的多级yaml管道从特定构建下载工件。Azure devops 如何在Azure开发人员Ops中访问任务输出变量,azure-devops,azure-pipelines,Azure Devops,Azure Pipelines,我试图使用新的多级yaml管道从特定构建下载工件。DownloadBuildArtifacts@0task有一个BuildNumber的输出变量,我想进一步引用它,但我不知道如何访问它 在任务的GUI中,有一个框,用于设置引用名称 但是从yaml管道定义来看,我无法理解如何访问这个变量 - task: DownloadBuildArtifacts@0 inputs: buildType: 'specific' project: 'Sandbox' pipeline:
DownloadBuildArtifacts@0
task有一个BuildNumber
的输出变量,我想进一步引用它,但我不知道如何访问它
在任务的GUI中,有一个框,用于设置引用名称
但是从yaml管道定义来看,我无法理解如何访问这个变量
- task: DownloadBuildArtifacts@0
inputs:
buildType: 'specific'
project: 'Sandbox'
pipeline: 'bash-testing'
buildVersionToDownload: 'latest'
downloadType: 'single'
artifactName: 'someArtifactName'
referenceNames: 'blahblah'
- bash: echo $BLAHBLAH_BUILDNUMBER
简单输出
您设置的输出变量定义不正确 YAML中上一个任务中定义输出变量的格式:
echo "##vso[task.setvariable variable=myOutputVar;isOutput=true]this is the value of output variable"
name: PWS
注意:isOutput=true
是宣布此变量为输出变量的关键代码。而且,name
等于显示在Classic editor UI中的Reference name
关于如何在Bash任务中访问和使用此输出变量,此调用脚本的格式为:
echo $(name.VariableName)
echo $(PWS.myOutputVar)
因此,我的示例脚本是:
echo $(name.VariableName)
echo $(PWS.myOutputVar)
我的yaml不正确,Merlin Liang关于
name
是正确语法的评论帮助我找到了答案
引用任务输出变量所需的正确yaml语法为
- task: DownloadBuildArtifacts@0
inputs:
buildType: 'specific'
project: 'Sandbox'
pipeline: 'bash-testing'
buildVersionToDownload: 'latest'
downloadType: 'single'
artifactName: 'some-artifact-name'
name: 'TEST'
- bash: echo $(TEST.BuildNumber)
这不会导致变量“PWS.myOutputVar”出现在任务组参数列表中吗?