AZDO 管道模板是否可以访问构建变量?

时间:2021-03-10 17:30:54

标签: azure-devops

在管道模板中考虑这一点:

- task: DotNetCoreCLI@2
  displayName: 'Create NuGet packages (dotnet pack)'
  condition: ${{ parameters.deployPackages }}
  inputs:
    command: 'custom'
    custom: >-
      pack ${{ parameters.workingPath }}/${{ parameters.solution }} 
      -c ${{ parameters.buildConfiguration }} 
      --no-restore 
      --include-source 
      -o $(Build.ArtifactsStagingDirectory)
      /p:PackageVersion=${{ parameters.packVersion }}

当我查看管道故障时,Build.ArtifactsStagingDirectory 未针对以下任何变体展开:

$(Build.ArtifactsStagingDirectory)
$BUILD_ARTIFACTSSTAGINGDIRECTORY
${{ Build.ArtifactsStagingDirectory }}

我想知道这是否特定于 DotNetCoreCLI@2 任务及其传递自定义参数的方式。

1 个答案:

答案 0 :(得分:1)

您应该使用的变量是 $(Build.ArtifactStagingDirectory)。也就是说,如果变量不存在,使用该语法,它应该扩展到引用本身(而不是 null 或空值。

此外,尝试在 DotNetCoreCLI@2 任务之外使用以下内容确认您的结果:

- pwsh: Write-Host "Staging Directory is $(Build.ArtifactStagingDirectory)"
  displayName: Check Staging Directory