Partilhar via


SSH@0 - Tarefa SSH v0

Utilize esta tarefa para executar comandos de shell ou um script num computador remoto com SSH. Esta tarefa permite-lhe ligar a um computador remoto através de SSH e executar comandos ou um script.

Syntax

# 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.

Entradas

sshEndpoint - Ligação do serviço SSH
string. Obrigatório.

Especifica o nome de uma ligação de serviço SSH que contém detalhes de ligação para o computador remoto. O nome de anfitrião ou endereço IP do computador remoto, o número da porta e o nome de utilizador são necessários para criar uma ligação de serviço SSH.

  • A chave privada e a frase de acesso têm de ser especificadas para autenticação.
  • Uma palavra-passe pode ser utilizada para autenticar em computadores Linux remotos, mas não é suportada para sistemas macOS ou Windows.

runOptions - Executar
string. Obrigatório. Valores permitidos: commands, script (Ficheiro de Script), inline (Script Inline). Valor predefinido: commands.

Executa comandos de shell ou um script de shell no computador remoto.


commands - Comandos
string. Necessário quando runOptions = commands.

Especifica os comandos da shell a executar no computador remoto. Este parâmetro só está disponível quando os Comandos estão selecionados para a opção Executar . Introduza cada comando juntamente com os respetivos argumentos numa nova linha da caixa de texto de várias linhas. Para executar vários comandos em conjunto, introduza-os na mesma linha separada por ponto e vírgula. Exemplo: cd /home/user/myFolder;build.

Nota

Cada comando é executado num processo separado. Se quiser executar uma série de comandos que são interdependentes (por exemplo, alterar a pasta atual antes de executar um comando), utilize a opção Script Inline .


scriptPath - Caminho do script da shell
string. Necessário quando runOptions = script.

Especifica o caminho para o ficheiro de script da shell a ser executado no computador remoto. Este parâmetro só está disponível quando o script da Shell está selecionado para a opção Executar .


inline - Inline Script
string. Necessário quando runOptions = inline.

Escreve o script da shell para ser executado no computador remoto.


interpreterCommand - Comando interpretador
string. Opcional. Utilize quando runOptions = inline. Valor predefinido: /bin/bash.

Especifica o caminho para o interpretador de comandos utilizado para executar o script. Adiciona uma linha shebang ao início do script. Relevante apenas para sistemas operativos semelhantes a UNIX. Utilize uma cadeia vazia para anfitriões remotos baseados no Windows. Saiba mais sobre o shebang (#!).


args - Argumentos
string. Opcional. Utilize quando runOptions = script.

Especifica os argumentos a transmitir para o script da shell. Este parâmetro só está disponível quando o script da Shell está selecionado para a opção Executar .


failOnStdErr - Falha no STDERR
boolean. Valor predefinido: true.

Se o valor for true, a compilação falha quando os comandos remotos ou o script escrevem em STDERR.


interactiveSession - Ativar sessão interativa
boolean. Valor predefinido: false.

Inicia uma sessão interativa. Os pedidos de palavra-passe são preenchidos pela palavra-passe do utilizador. As sessões interativas podem ser úteis para executar comandos, como sudo.


readyTimeout - Tempo limite do handshake SSH
string. Obrigatório. Valor predefinido: 20000.

Especifica quanto tempo (em milissegundos) a tarefa aguarda a conclusão do handshake SSH.


interactiveKeyboardAuthentication - Utilizar a autenticação de teclado interativo
boolean. Valor predefinido: false.

Ativa a autenticação de teclado interativo. Defina como true se o servidor SSH de destino necessitar de Autenticação Interativa de Teclado (PasswordAuthentication está desativado no computador de destino/definido como Não no sshd_config).


Opções de controlo de tarefas

Todas as tarefas têm opções de controlo para além das entradas de tarefas. Para obter mais informações, veja Opções de controlo e propriedades de tarefas comuns.

Variáveis de saída

Nenhum.

Observações

Utilize esta tarefa para executar comandos de shell ou um script num computador remoto com SSH. Esta tarefa permite-lhe ligar a um computador remoto através de SSH e executar comandos ou um script.

Pré-requisitos

  • A tarefa suporta a utilização de um par de chaves SSH para ligar às máquinas remotas.
  • A chave pública tem de ser pré-instalada ou copiada para as máquinas remotas.

Algoritmos suportados

Algoritmos de pares de chaves

  • RSA
  • DSA

Algoritmos de encriptação

  • aes256-cbc
  • aes192-cbc
  • aes128-cbc
  • blowfish-cbc
  • 3des-cbc
  • arcfour256
  • arcfour128
  • cast128-cbc
  • arcfour

Para OpenSSL v1.0.1 e superior (no agente):

  • aes256-ctr
  • aes192-ctr
  • aes128-ctr

Para OpenSSL v1.0.1 e superior, NodeJS v0.11.12 e superior (no agente):

  • aes128-gcm
  • aes128-gcm@openssh.com
  • aes256-gcm
  • aes256-gcm@openssh.com

Requisitos

Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agente, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de tabelas definidas Qualquer
Versão do agente 2.206.1 ou superior
Categoria da tarefa Implementar
Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agente, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de tabelas definidas Qualquer
Versão do agente 2.144.0 ou superior
Categoria da tarefa Implementar
Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agente, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de tabelas definidas Qualquer
Versão do agente 2.102.0 ou superior
Categoria da tarefa Implementar

Ver também