Uma GitHub Action que executa comandos em servidores remotos via SSH nos seus workflows de CI/CD.
pyinfra-dev/pyinfra
Ferramenta de automação de infraestrutura que executa operações definidas em Python e comandos shell em servidores SSH, máquinas locais e contêineres Docker.
Alternativa open source a:Ansible
- Estrelas
- 6,044
- Forks
- 558
- Issues abertas
- 166
- Último commit
- há 7 dias
O que é?
pyinfra é uma ferramenta de automação de infraestrutura que permite escrever em Python, em vez de YAML, a lógica de configuração de servidores e implantação. Você pode executar comandos shell pontuais em vários hosts ou definir operações declarativas, como instalar pacotes ou gerenciar arquivos, que o pyinfra converte em comandos shell e executa nos destinos.
Os destinos podem ser servidores remotos acessados por SSH, a máquina local ou contêineres Docker. As operações são idempotentes, então você pode visualizar as alterações com diffs e dry runs antes de aplicá-las. A saída em tempo real de stdin, stdout e stderr fica disponível para depuração, com níveis de verbosidade cada vez maiores.
Como é Python convencional, você pode usar o amplo ecossistema de pacotes Python nos seus scripts de implantação. O projeto não requer agentes, apenas acesso ao shell no destino, e inclui conectores para Docker, Terraform e Vagrant.
Recursos principais
- 01Escreva a lógica de implantação em Python em vez de YAML.
- 02Execute comandos pontuais ou operações declarativas em hosts acessados por SSH, na máquina local e em contêineres Docker.
- 03Operações idempotentes permitem visualizar diffs e executar dry runs antes de aplicar alterações.
- 04A saída dos comandos em tempo real ajuda a depurar etapas com falhas.
- 05Não requer agentes: basta ter acesso ao shell no destino.
- 06Conectores para inventários do Docker, Terraform e Vagrant.
Casos de uso
- Configurar e implantar uma frota de servidores a partir de uma única base de código Python.
- Executar o mesmo comando shell em vários hosts de uma só vez.
- Testar a configuração de servidores em contêineres Docker locais antes de mexer em produção.
- Equipes que querem automação no estilo do Ansible usando Python em vez de YAML.
Início rápido
- 1
Instalar pyinfra com uv
uv tool install pyinfra - 2
Executar um comando em um servidor SSH
pyinfra my-server.net exec -- echo "hello world" - 3
Executar um comando em um contêiner Docker
pyinfra @docker/ubuntu exec -- echo "Hello world"
Tópicos
Perguntas frequentes
- O que é pyinfra?
- Ferramenta de automação de infraestrutura que executa operações definidas em Python e comandos shell em servidores SSH, máquinas locais e contêineres Docker. pyinfra é uma ferramenta de automação de infraestrutura que permite escrever em Python, em vez de YAML, a lógica de configuração de servidores e implantação. Você pode executar comandos shell pontuais em vários hosts ou definir operações declarativas, como instalar pacotes ou gerenciar arquivos, que o pyinfra converte em comandos shell e executa nos destinos.
- pyinfra é gratuito? Qual é a licença?
- pyinfra é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- pyinfra ainda é mantido?
- Manutenção ativa. O último commit de pyinfra foi em 15 de out. de 2026.
- Para que posso usar pyinfra?
- Configurar e implantar uma frota de servidores a partir de uma única base de código Python. Executar o mesmo comando shell em vários hosts de uma só vez. Testar a configuração de servidores em contêineres Docker locais antes de mexer em produção. Equipes que querem automação no estilo do Ansible usando Python em vez de YAML.
- Como instalar pyinfra?
- Instalar pyinfra com uv: uv tool install pyinfra Executar um comando em um servidor SSH: pyinfra my-server.net exec -- echo "hello world" Executar um comando em um contêiner Docker: pyinfra @docker/ubuntu exec -- echo "Hello world"
- Onde consigo pyinfra?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/pyinfra-dev/pyinfra
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
CLI de infraestrutura como código que planeja e aplica arquivos de configuração declarativa para criar, alterar e versionar recursos de nuvem e serviços.
Interface de linha de comando oficial da OVHcloud para gerenciar serviços, contas e recursos da Public Cloud pelo terminal.
Uma biblioteca cliente Python para Kubernetes com API inspirada no kubectl e interfaces síncrona e assíncronas (asyncio/trio).
Runner baseado em shell para kernels de proxy Clash / Mihomo no Linux, com gerenciamento de assinaturas, seleção de nós, modo Tun e comando doctor integrado.
Sistema de código aberto para executar, gerenciar e escalar workloads de IA em Kubernetes, Slurm e mais de 20 provedores de nuvem ou GPU com uma única interface.