作为POC的一部分,我试图在AgentPhase1的powershell脚本中设置环境变量,并尝试访问和打印VSTS版本管道的AgentPhase2中的相同变量。但是,我总是低于例外。
异常消息:'BuildConfiguration'为空或未定义
有没有办法在多个代理阶段之间传递变量。我的代码在AgentPhase1中设置变量
$csv='1','2','3'
Write-Host "##vso[task.setvariable variable=BuildConfiguration]$csv"
在AgentPhase2中获取和打印变量的代码
Write-Host 'Reading data from AgentPhase2' $env:BuildConfiguration
修改 我能够在同一代理阶段访问和打印“BuildConfiguration”变量,但我无法在其他代理阶段读取相同的变量。
任何帮助...... ??
答案 0 :(得分:1)
变量的变量值仅适用于您更改值的环境,而不适用于其他环境和AgentPhases。
解决方法是为每个AgentPhase /环境添加Powershell任务,您需要获取更改后的值。 powershell脚本与您设置的相同:
$csv='1','2','3'
Write-Host "##vso[task.setvariable variable=BuildConfiguration]$csv"