TFS。将变量从触发构建传递到发布中的下一个任务

TFS. Pass variable from triggered build to next task in a release

我想在发布任务之间传递变量。 (从触发构建到脚本)

文件:

Script1: (保存一个环境变量)

Write-Output ("##vso[task.setvariable variable=MyVar;]$MyVarValue")

Script2:(打印环境变量值)

Write-host $env:MyVar

脚本 3:(与脚本 2 相同)

Write-host $env:MyVar

第一种方法:构建

这工作正常,第二个脚本写入第一个创建的 $env:MyVar 的值。

第二种方法:发布 - 我的发布:

也能正常工作。

当我的版本更改为:

时,我的问题就来了

在最后一种情况下,Script3 没有打印 $env:MyVar,所以我猜该版本使用的环境与用于触发构建的环境不同?

有没有办法做类似的事情?

无法直接使用 TFS 执行此操作。

我已阅读有关变量组的内容,但无法在执行时使用脚本动态设置变量。

找到的唯一解决方案是使用插件 Variable (de|re)Hydration Tasks

解决方案来自: