SSH@0 - SSH v0 任务
使用此任务通过 SSH 在远程计算机上运行 shell 命令或脚本。 使用此任务,你可以使用 SSH 连接到远程计算机,并运行命令或脚本。
语法
# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
inputs:
sshEndpoint: # string. Required. SSH service connection.
runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
commands: # string. Required when runOptions = commands. Commands.
#scriptPath: # string. Required when runOptions = script. Shell script path.
#inline: # string. Required when runOptions = inline. Inline Script.
#interpreterCommand: '/bin/bash' # string. Optional. Use when runOptions = inline. Interpreter command. Default: /bin/bash.
#args: # string. Optional. Use when runOptions = script. Arguments.
# Advanced
#failOnStdErr: true # boolean. Fail on STDERR. Default: true.
#interactiveSession: false # boolean. Enable interactive session. Default: false.
readyTimeout: '20000' # string. Required. SSH handshake timeout. Default: 20000.
#interactiveKeyboardAuthentication: false # boolean. Use interactive-keyboard authentication. Default: false.
# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
inputs:
sshEndpoint: # string. Required. SSH service connection.
runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
commands: # string. Required when runOptions = commands. Commands.
#scriptPath: # string. Required when runOptions = script. Shell script path.
#inline: # string. Required when runOptions = inline. Inline Script.
#interpreterCommand: '/bin/bash' # string. Optional. Use when runOptions = inline. Interpreter command. Default: /bin/bash.
#args: # string. Optional. Use when runOptions = script. Arguments.
# Advanced
#failOnStdErr: true # boolean. Fail on STDERR. Default: true.
#interactiveSession: false # boolean. Enable interactive session. Default: false.
readyTimeout: '20000' # string. Required. SSH handshake timeout. Default: 20000.
# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
inputs:
sshEndpoint: # string. Required. SSH service connection.
runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
commands: # string. Required when runOptions = commands. Commands.
#scriptPath: # string. Required when runOptions = script. Shell script path.
#inline: # string. Required when runOptions = inline. Inline Script.
#args: # string. Optional. Use when runOptions = script. Arguments.
# Advanced
#failOnStdErr: true # boolean. Fail on STDERR. Default: true.
readyTimeout: '20000' # string. Required. SSH handshake timeout. Default: 20000.
# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
inputs:
sshEndpoint: # string. Required. SSH service connection.
runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
commands: # string. Required when runOptions = commands. Commands.
#scriptPath: # string. Required when runOptions = script. Shell script path.
#inline: # string. Required when runOptions = inline. Inline Script.
#args: # string. Optional. Use when runOptions = script. Arguments.
# Advanced
#failOnStdErr: true # boolean. Fail on STDERR. Default: true.
输入
sshEndpoint
- SSH 服务连接
string
. 必需。
指定包含远程计算机的连接详细信息的 SSH 服务连接的名称。 创建 SSH 服务连接需要使用远程计算机的主机名或 IP 地址、端口号以及用户名。
- 必须为身份验证指定私钥和通行短语。
- 密码可用于向远程 Linux 计算机进行身份验证,但 macOS 或 Windows 系统不支持此密码。
runOptions
- 运行
string
. 必需。 允许的值: commands
、 script
(脚本文件) 、 inline
(内联脚本) 。 默认值:commands
。
在远程计算机上运行 shell 命令或 shell 脚本。
commands
- 命令
string
. 当 runOptions = commands
时,需要此选项。
指定要在远程计算机上运行的 shell 命令。 仅当为“运行”选项选择了“命令”时,此参数才可用。 在“多行”文本框的新行中输入每个命令及其参数。 若要同时运行多个命令,请在同一行中输入它们并用分号分隔它们。 示例:cd /home/user/myFolder;build
。
注意
每个命令在单独的进程中运行。 如果要运行一系列相互依赖的命令 (例如,在执行命令) 之前更改当前文件夹,请改用 “内联脚本” 选项。
scriptPath
- Shell 脚本路径
string
. 当 runOptions = script
时,需要此选项。
指定要在远程计算机上运行的 shell 脚本文件的路径。 仅当为“运行”选项选择了“Shell 脚本”时,此参数才可用。
inline
- 内联脚本
string
. 当 runOptions = inline
时,需要此选项。
编写在远程计算机上运行的 shell 脚本。
interpreterCommand
- 解释器命令
string
. 可选。 在 时 runOptions = inline
使用 。 默认值:/bin/bash
。
指定用于执行脚本的命令解释器的路径。 在脚本开头添加一个 shebang 行。 仅与 UNIX 类的操作系统相关。 对基于 Windows 的远程主机使用空字符串。 详细了解 shebang (#!) 。
args
- 参数
string
. 可选。 在 时 runOptions = script
使用 。
指定要传递给 shell 脚本的参数。 仅当为“运行”选项选择了“Shell 脚本”时,此参数才可用。
failOnStdErr
- STDERR 失败
boolean
. 默认值:true
。
如果值为 true
,则当远程命令或脚本写入 时 STDERR
,生成将失败。
interactiveSession
- 启用交互式会话
boolean
. 默认值:false
。
启动交互式会话。 密码请求由用户的密码填充。 交互式会话可用于运行命令,例如 sudo
。
readyTimeout
- SSH 握手超时
string
. 必需。 默认值:20000
。
指定任务等待 SSH 握手完成) (的时长(以毫秒为单位)。
interactiveKeyboardAuthentication
- 使用交互式键盘身份验证
boolean
. 默认值:false
。
启用交互式键盘身份验证。 true
如果目标 SSH 服务器需要交互式键盘身份验证,PasswordAuthentication
(在目标计算机上禁用/在 sshd_config) 中设置为“否”,则设置为 。
任务控制选项
除了任务输入,所有任务都有控制选项。 有关详细信息,请参阅 控制选项和常见任务属性。
输出变量
无。
备注
使用此任务通过 SSH 在远程计算机上运行 shell 命令或脚本。 使用此任务,你可以使用 SSH 连接到远程计算机,并运行命令或脚本。
先决条件
- 此任务支持使用 SSH 密钥对连接到远程计算机。
- 必须将公钥预先安装或复制到远程计算机。
支持的算法
密钥对算法
- RSA
- DSA
加密算法
- aes256-cbc
- aes192-cbc
- aes128-cbc
- blowfish-cbc
- 3des-cbc
- arcfour256
- arcfour128
- cast128-cbc
- arcfour
对于 OpenSSL v1.0.1 及更高版本(在代理上):
- aes256-ctr
- aes192-ctr
- aes128-ctr
对于 OpenSSL v1.0.1 及更高版本、NodeJS v0.11.12 及更高版本(在代理上):
- aes128-gcm
- aes128-gcm@openssh.com
- aes256-gcm
- aes256-gcm@openssh.com
要求
要求 | 说明 |
---|---|
管道类型 | YAML,经典内部版本,经典版本 |
运行平台 | Agent、DeploymentGroup |
需求 | 无 |
功能 | 此任务不满足作业中后续任务的任何要求。 |
命令限制 | 任意 |
可设置的变量 | 任意 |
代理版本 | 2.206.1 或更高版本 |
任务类别 | 部署 |
要求 | 说明 |
---|---|
管道类型 | YAML,经典内部版本,经典版本 |
运行平台 | Agent、DeploymentGroup |
需求 | 无 |
功能 | 此任务不满足作业中后续任务的任何要求。 |
命令限制 | 任意 |
可设置的变量 | 任意 |
代理版本 | 2.144.0 或更高版本 |
任务类别 | 部署 |
要求 | 说明 |
---|---|
管道类型 | YAML,经典内部版本,经典版本 |
运行平台 | Agent、DeploymentGroup |
需求 | 无 |
功能 | 此任务不满足作业中后续任务的任何要求。 |
命令限制 | 任意 |
可设置的变量 | 任意 |
代理版本 | 2.102.0 或更高版本 |
任务类别 | 部署 |