Repolode
appleboy

appleboy/ssh-action

Uma GitHub Action que executa comandos em servidores remotos via SSH nos seus workflows de CI/CD.

Estrelas
6,225
Forks
679
Issues abertas
32
Último commit
há 2 meses

O que é?

SSH for GitHub Actions permite que um workflow acesse um ou mais hosts remotos via SSH e execute comandos de shell ou um arquivo de script neles. É comumente usada para fazer deploy de código, reiniciar serviços ou executar tarefas de manutenção em servidores como parte de um pipeline do GitHub Actions. A action é desenvolvida em Golang com base no drone-ssh.

As opções de conexão incluem autenticação por senha ou chave privada, portas personalizadas, seleção de protocolo IPv4/IPv6, verificação da fingerprint do host e jump hosts configurados por meio de uma configuração de proxy separada. É possível direcionar a execução a vários hosts em uma única etapa, em paralelo ou de forma síncrona. Também é possível passar variáveis de ambiente para o script remoto e capturar a saída padrão como saída da etapa para uso em etapas posteriores.

O repositório inclui instruções para gerar chaves RSA e ED25519, observações sobre compatibilidade do OpenSSH com algoritmos mais antigos e orientações para solucionar problemas em shells nos quais os comandos não são encontrados.

Recursos principais

  • 01Executar vários comandos ou um arquivo de script em hosts remotos
  • 02Autenticar com senha ou chave privada, com suporte a passphrase
  • 03Fazer deploy em vários hosts, em paralelo ou de forma síncrona
  • 04Conectar por meio de um jump host usando configurações de proxy separadas
  • 05Passar variáveis de ambiente para o script remoto
  • 06Capturar a saída dos comandos para uso em etapas posteriores do workflow

Casos de uso

  • Fazer deploy de uma aplicação compilada em um VPS ou servidor local após um push
  • Reiniciar serviços ou executar migrações de banco de dados em máquinas remotas a partir do CI
  • Executar scripts de manutenção em vários hosts em uma única etapa do workflow
  • Acessar servidores privados atrás de um bastion host usando runners hospedados pelo GitHub

Início rápido

  1. 1

    Adicione a etapa appleboy/ssh-action ao workflow com as entradas host, username, key e script

  2. 2

    Armazene HOST, USERNAME, KEY e PORT no GitHub Secrets e faça referência a eles na etapa

  3. 3

    Faça push para o repositório para acionar o workflow e executar os comandos remotos

Antes de usar

  • Ele só é executado em workflows do GitHub Actions, não como uma ferramenta de linha de comando independente.
  • Os hosts remotos precisam aceitar conexões SSH dos runners do GitHub e ter o login por chave ou senha configurado.

Tópicos

Perguntas frequentes

O que é ssh-action?
Uma GitHub Action que executa comandos em servidores remotos via SSH nos seus workflows de CI/CD. SSH for GitHub Actions permite que um workflow acesse um ou mais hosts remotos via SSH e execute comandos de shell ou um arquivo de script neles. É comumente usada para fazer deploy de código, reiniciar serviços ou executar tarefas de manutenção em servidores como parte de um pipeline do GitHub Actions. A action é desenvolvida em Golang com base no drone-ssh.
ssh-action é gratuito? Qual é a licença?
ssh-action é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
ssh-action ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de ssh-action foi em 16 de ago. de 2026.
Para que posso usar ssh-action?
Fazer deploy de uma aplicação compilada em um VPS ou servidor local após um push Reiniciar serviços ou executar migrações de banco de dados em máquinas remotas a partir do CI Executar scripts de manutenção em vários hosts em uma única etapa do workflow Acessar servidores privados atrás de um bastion host usando runners hospedados pelo GitHub
Como instalar ssh-action?
Adicione a etapa appleboy/ssh-action ao workflow com as entradas host, username, key e script Armazene HOST, USERNAME, KEY e PORT no GitHub Secrets e faça referência a eles na etapa Faça push para o repositório para acionar o workflow e executar os comandos remotos
Onde consigo ssh-action?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/appleboy/ssh-action

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados