【问题标题】:Azure Devops Release Pipelines - Variable to obtain the Source (build pipeline) value?Azure Devops 发布管道 - 获取源(构建管道)值的变量?
【发布时间】:2019-07-10 20:50:20
【问题描述】:

我正在寻找一种从构建工件屏幕中提取发布中“源(构建管道)”值的名称的方法。

attached screenshot 中,“源(构建管道)”值(红色圆圈中)是“订阅者-构建”,而源别名始终具有 _ 下划线字符,例如"_SubscriberBuild"

我尝试了以下变量和变体:

$(Release.Artifacts.{$(Release.PrimaryArtifactSourceName)}.DefinitionName)

按照here 的建议,但没有成功。

这真的可能吗?

【问题讨论】:

    标签: azure-devops azure-pipelines azure-pipelines-release-pipeline azure-artifacts


    【解决方案1】:

    4c74356b41的答案是正确的,如果它是您的主要工件,您可以使用Build.DefinitionName

    但是,如果您想使用文档中提到的变量,您可以通过这种方式(在 PowerShell 中)获取值:

    $primaryAlias = $env:Release_PrimaryArtifactSourceAlias
    
    $definitionVariable = "Release_Artifact_$($primaryAlias)_DefinitionName"
    
    # Get the value of the environment variable Release.Artifact.{alias}.DefnitionName:
    
    $primaryDefnitionName = (Get-Item env:$defnitionVariable).Value
    

    通过上述方式,您可以获得构建定义名称虽然不是您的主要工件,但只需更改第一行,例如:triggerAlias = $env:Release_TriggeringArtifacts_Alias 用于触发工件。

    【讨论】:

    • 谢谢-这有效-顺便说一句,您的答案中有错字-因为我只是将其剪切并粘贴了而已。它的 Build.DefinitionName
    • 谢谢!我添加了缺少的i
    【解决方案2】:

    对于主要工件,您可以按照文档建议使用 $(Build.DefinitionName) 检索其构建定义名称

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-29
      • 1970-01-01
      • 2021-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-07
      • 1970-01-01
      相关资源
      最近更新 更多