通过DevOps SSH任务访问管道变量

时间:2019-10-09 23:08:02

标签: bash ssh azure-devops azure-pipelines

我在Azure devops管道中有一个SSH任务,该任务连接到另一台目标服务器以执行部署。

目标服务器没有我管道的任何变量,也没有任何将它们传递给标准SSH任务的方法。也就是说,如果我运行pwd,则不会显示任何变量。

一些变量是密码。

将它们传递到远程服务器的最简单方法是什么?

1 个答案:

答案 0 :(得分:1)

PowerShell on Target Machine任务与设置变量的PS脚本一起使用可以帮助您实现这一目标。

此任务可以帮助您连接远程服务器,然后完成powershell脚本。

对于设置变量脚本,您可以使用以下格式的Write-Verbose -verbose进行检查:

Param(
  [string]$psw
)
Write-Verbose "##vso[task.setvariable variable=NewPSWVariable]$psw" -verbose

enter image description here

我在.ps1文件中编写了脚本,然后选择文件路径,调用该值并将其传递给 Target Machine上的PowerShell 任务中的参数。 / p>

我在这里使用的是Write-Verbose。这可以帮助将变量输出到控制台中,这可以帮助调试日志。