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

标签 bash ssh azure-devops azure-pipelines

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

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

一些变量是密码。

将这些传递到我的远程服务器的最简单方法是什么?

最佳答案

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 文件中编写了脚本,然后选择 文件路径 ,在目标机器 任务上调用并将值传递给 PowerShell 中的参数。

我在这里使用的是 Write-Verbose 。这有助于将变量打印到控制台,这有助于调试日志。

关于bash - 通过 DevOps SSH 任务访问管道变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58313388/

相关文章:

linux - 如何在 Ubuntu 中为 shell 脚本创建可执行文件?

php - 如何使用 ssh2 列出其他服务器中目录的文件

azure-devops - WhiteSource 无法扫描您的存储库。请导航到组织设置 > WhiteSource 选项卡连接到您的 WhiteSource 帐户

azure-devops - Azure DevOps 拉取请求行颜色

bash - 有人可以用简单的英语解释这个简短的 getopts bash 脚本吗? (UNIX)

linux - 从文件名中存在的日期字符串设置文件修改时间

linux - Bash 脚本 - return 实际上返回其他东西

go - 关闭加密 ssh session 以释放 golang 中所有资源的正确方法?

networking - 加快两个实例上小文件 (500kb) 的同步速度

azure-devops - 如何在 Devops/VSTS 中自动启动以前成功的发布