如何从TFS / AzureDevOps中获取从构建到发布管道的变量值?

时间:2018-09-29 12:06:07

标签: tfs azure-devops azure-pipelines azure-pipelines-build-task azure-pipelines-release-task

我已经在TFS / AzureDevops构建定义中定义了一个变量(例如,它是time) 并在我的构建定义中使用PowerShell任务分配值。

就像

类型:内联脚本。

内嵌脚本:

$date=$(Get-Date -Format g);
Write-Host "##vso[task.setvariable variable=time]$date"

您可以参考此similar example

现在,我想在发布定义管道中获取此值。我将此构建定义配置为持续部署到我的发布定义。

我的问题是

如何使用其他变量获取发布定义中的time值?这可能吗?

1 个答案:

答案 0 :(得分:4)

这不是将变量从Build传递到Release的正式方法。实现此目的的唯一方法是将值存储在文件(json,xml,yaml,您拥有的文件)中,并将其附加为Build Artifact。这样,您可以读取发行版中的文件,然后再次设置变量。

马丁·欣舍伍德(Martin Hinshelwood)似乎对这个问题和turned that functionality into an extension for Azure DevOps Pipelines感到沮丧。

  

包含的任务

     
      
  • 变量保存任务-在构建期间,您可以将变量保存到与其他构建资产一起存储的json文件中
  •   
  • 变量加载任务-在发布期间,您可以加载保存的变量并获得对它们的访问权限。
  •