是否有用于另一个构建触发的构建的构建源分支的环境变量?

Is there an env var for the build source branch of a build triggered by another build?

我有一个构建由另一个构建触发。 我想获取触发当前构建的构建的 SourceBranchName。 Azure predefined variables 仅提供有关 "triggered by" 构建的以下变量:

  1. Build.TriggeredBy.BuildId
  2. Build.TriggeredBy.DefinitionId
  3. Build.TriggeredBy.DefinitionName
  4. Build.TriggeredBy.BuildNumber
  5. Build.TriggeredBy.ProjectID

当我尝试访问 $(Build.TriggeredBy.SourceBranchName) 时,我得到的是空字符串..

有什么建议吗?

Is there an env var for the build source branch of a build triggered by another build?

对于给您带来的不便,我们深表歉意。

正如您所见,MS provide 没有提供关于 Build.TriggeredBy.SourceBranchName 的预定义变量,因此没有这种开箱即用的环境变量来触发构建的构建源分支。

您可以在我们的 UserVoice 网站 (https://developercommunity.visualstudio.com/content/idea/post.html?space=21 ) 上添加对此功能的请求,该网站是我们提供产品建议的主要论坛。感谢您帮助我们构建更好的 Azure DevOps:

作为解决方法,我们可以调用 REST API (Definitions - Update) 来更新调用管道任务中触发的构建定义变量的值:

PUT https://vsrm.dev.azure.com/{organization}/{project}/_apis/release/definitions?api-version=5.0

我们可以通过 REST API 将 Build.SourceBranchName 作为可验证对象传输到触发构建管道,以便我们可以在触发构建管道中访问它。

您可以查看 了解更多详情。

希望对您有所帮助。