如何查看 Azure Devops 中的预定义变量

Ris*_*ngh 10 azure azure-devops azure-pipelines azure-devops-self-hosted-agent azure-pipelines-tasks

我想查看预定义变量的路径值,就像$(System.DefaultWorkingDirectory)我想查看其中存储的值一样。我无法找到这个变量值,所以我在 Azure DevOps 中哪里可以找到它。

简而言之,我如何检查该特定发布管道中使用的 Build.SourcesDirectory 或 Build.Repository.LocalPath 是什么?

Krz*_*tof 21

我不确定您是否在 Azure DevOps 中找到了某个特定位置背后的价值观。根据您为代理选择的操作系统,值可能会略有不同。但是您始终可以将它们打印出来。请在此处查看文档

steps:
  - bash: echo $(System.DefaultWorkingDirectory)
Run Code Online (Sandbox Code Playgroud)

要打印所有变量,您可以使用此步骤(因为脚本也可以通过环境变量使用变量)

 steps: # 'Steps' section is to be used inside 'job' section.
  - task: Bash@3
    inputs:
      targetType: 'inline'
      script: 'env | sort'
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

适用于 Windows 和 Linux 的另一个选项是(全部归功于 Joe):

- pwsh: (gci  env:* | sort-object name)
Run Code Online (Sandbox Code Playgroud)

您还可以使用第三方扩展打印所有变量

  - task: printAllVariables@1
    displayName: 'Print all variables via extension'
Run Code Online (Sandbox Code Playgroud)

或者这样的表达:

  - ${{ each var in variables }}:
    - pwsh: Write-Host "${{ var.Key }} - ${{ var.Value }}"
      displayName: 'Print variables via expression in the loop'
Run Code Online (Sandbox Code Playgroud)

这是一个示例管道:

steps:
  - bash: echo $(System.DefaultWorkingDirectory)
Run Code Online (Sandbox Code Playgroud)

  • 在评论中回答我自己的问题:此 powershell 脚本适用于以下两者:`- pwsh: (gci env:* | sort-object name)` (5认同)