在Azure DevOps的发布管道中的作业代理的两个任务之间共享PowerShell变量

Gol*_*Age 3 powershell azure-devops

我在Azure DevOps的发布管道中创建了两个PowerShell任务。第一个任务包含一个内联PowerShell脚本,如下所示:

$ciVersion = "v2.1"
Write-Host $ciVersion
Run Code Online (Sandbox Code Playgroud)

在第二个PowerShell任务中,我只想读取在第一个PowerShell任务中声明的变量。

Write-Host $ciVersion
Run Code Online (Sandbox Code Playgroud)

运行发行过程后,控制台v2.1在第一个任务的控制台窗口中显示给我,但在第二个任务的控制台窗口中什么都不显示。我也尝试过声明一个环境变量并在任务中修改它的值,但是这对我也不起作用。有任何想法吗?干杯

Sha*_*zyk 5

在第一个PowerShell任务中,将变量设置为环境变量:

$ciVersion = "v2.1"
Write-Host $ciVersion
Write-Host ("##vso[task.setvariable variable=ciVersion;]$ciVersion")
Run Code Online (Sandbox Code Playgroud)

在第二个任务中,以这种方式读取变量:

$ciVersion =  $env:ciVersion
Write-Host $ciVersion
Run Code Online (Sandbox Code Playgroud)

这将完成工作:)