【问题标题】:How to get the variable value in TFS/AzureDevOps from Build to Release Pipeline?如何从构建到发布管道获取 TFS/AzureDevOps 中的变量值?
【发布时间】:2019-03-05 05:03:22
【问题描述】:

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

喜欢,

类型:内联脚本。

内联脚本:

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

你可以参考这个similar example

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

我的问题是

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

【问题讨论】:

  • 没有 cmets 的反对票是怎么回事?他尝试了所有合理的尝试!
  • 如果您需要获取构建的日期,为什么不使用 REST API 检索链接的构建并从中检索日期?

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


【解决方案1】:

这不是将变量从 Build 传递到 Release 的官方方式。完成此操作的唯一方法是将值存储在文件中(json、xml、yaml、你有什么)并将其作为构建工件附加。这样你就可以读取版本中的文件并再次设置变量。

Martin Hinshelwood 似乎对这个问题和turned that functionality into an extension for Azure DevOps Pipelines 感到很沮丧。

包含的任务

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

【讨论】:

  • 感谢您的回答!我目前正在使用 TFS,此扩展目前支持 AzureDevOps。您是否有任何参考,例如将变量存储到 Json(或)任何文件中并通过发布管道读取它?
  • 变量组在这里会有所帮助吗?
  • 变量组将有助于在构建和发布之间共享静态值。
  • 疯了,这不是开箱即用的!谢谢马丁!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-17
  • 1970-01-01
  • 2020-07-11
  • 1970-01-01
  • 2016-12-28
相关资源
最近更新 更多