如何在我的版本定义中的powershell脚本中使用秘密变量?
我遇到了this,但它不起作用。新代理上不存在目录"$($env:AGENT_HOMEDIRECTORY)\agent\worker\Modules"
。
在新主机上访问秘密变量的正确方法是什么?我的代理版本是2.114.0。
答案 0 :(得分:7)
按design,您必须通过PowerShell参数传递secret变量的值。
例如:
变量:password (secret)
任务:PowerShell
参数:-pass $(password)
脚本:
Param(
[String]$pass
)
if ($pass) { Write-Host "variable is NOT null" }
if (!$pass) { Write-Host "variable is null" }
答案 1 :(得分:2)
您现在无需任何参数即可实现此目标,请参见下面的脚本
Write-Host "Client Id " $env:client_id;
Write-Host "Client Secret" $(client_secret)
$applicationId = $env:client_id;
$clientsec = "$(client_secret)" | ConvertTo-SecureString -AsPlainText -Force
$credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $applicationId, $clientsec