Skip to main content

Automações em sua empresa

Saiba como GitHub Apps, serviços externos e GitHub Actions trabalhar em conjunto para automatizar processos em sua empresa.

A automação em GitHub normalmente envolve vários componentes que trabalham em conjunto. Os componentes nativos mais importantes GitHub são:

  • GitHub Actions fluxos de trabalho, que fornecem um runtime para executar a lógica de automação. Fora de caixa, eles funcionam em um único repositório, mas podem ser estendidos para automatizar entre ou até mesmo fora dos repositórios.
  • GitHub Apps, que não têm tempo de execução. Em vez disso, eles fornecem identidade, permissões e entrega de eventos para que suas automações, sejam serviços externos ou fluxos de trabalho, possam se autenticar e agir com segurança.

A maior parte da automação empresarial usa GitHub Apps e GitHub Actions em conjunto. Por exemplo, um fluxo de trabalho em execução no GitHub Actions pode usar um GitHub App para obter um token de curta duração que permite executar tarefas em repositórios ou organizações.

Este guia explica como GitHub Apps, automações externas e GitHub Actions complementam umas às outras e quando usar cada uma em sua empresa.

GitHub Apps

Um GitHub App fornece a identidade, as permissões e os eventos de webhook necessários para automação em ou entre repositórios, organizações ou sua empresa. GitHub Apps não executam lógica, mas permitem que outros sistemas o façam.

GitHub Apps dar suporte à automação empresarial oferecendo:

  • Permissões granulares para seguir princípios de privilégios mínimos
  • Instalações delimitadas no nível da empresa, da organização ou do repositório
  • Tokens de curta duração para acesso seguro
  • Identidades distintas com auditabilidade completa
  • Administração delegada por meio da GitHub App função de gerente
  • Consistência em escala quando pertencente à conta corporativa

GitHub Apps O que habilitar?

GitHub Apps permitem que automações que você escreva em outros ambientes — como serviços externos ou etapas de fluxo de trabalho — interajam com GitHub APIs dentro das permissões que você conceder. Por exemplo:

  • Recebendo eventos de webhook e disparando serviços externos
  • Habilitando um fluxo de trabalho para atuar fora do escopo do repositório padrão
  • Integrar GitHub a sistemas de terceiros
  • Coordenando alterações em vários repositórios
  • Executando bots ou serviços de longa duração que monitoram atividades em nível empresarial.

GitHub Actions

GitHub Actionsfornecem o runtime integrado de GitHub para executar a lógica de automação nos repositórios. Os fluxos de trabalho são executados em auto-hospedados e são ideais para tarefas vinculadas a alterações de código ou eventos de repositório.

Use GitHub Actions para:

  • CI/CD (compilar, testar, implantar)
  • Verificações e validações de solicitação de pull
  • Tarefas de manutenção no nível do repositório
  • Fluxos de trabalho orientados por eventos respondendo a pushes, tags ou atualizações de incidentes
  • Trabalhos agendados com cron

Como GitHub Actions usa GitHub Apps

GitHub Actions e GitHub Apps estão profundamente conectados:

  • As permissões do fluxo de trabalho correspondem diretamente às permissões de GitHub App.
  • Os fluxos de trabalho podem se autenticar como um GitHub Appusuário específicoactions/create-github-app-token.
  • GitHub Apps pode disparar fluxos de trabalho por meio de eventos como repository_dispatch.

Automações e serviços externos

As automações externas são executadas fora de GitHub na sua própria infraestrutura. Esses serviços normalmente:

  • Receber eventos de webhook de um GitHub App
  • Use o GitHub App para solicitar tokens de instalação de curta duração
  • Executar lógica de longa duração ou que abranja toda a empresa
  • Integrar com sistemas de negócios externos

Os exemplos incluem:

  • Gerenciamento de configuração em toda a organização
  • Serviços de imposição de política
  • Sincronização de metadados ou código de vários repositórios
  • Geração de relatório de conformidade
  • Gerenciamento de problemas entre organizações ou de pull requests

Todas elas dependem de GitHub Apps para autenticação, identidade e eventos — não para execução.

Como esses componentes funcionam juntos

A maioria da automação empresarial usa uma combinação de GitHub Apps, serviços externos e GitHub Actions para obter fluxos de trabalho robustos e escaláveis.

Por exemplo:

  1. Uma empresa GitHub App recebe um webhook quando um novo repositório é criado e envia o conteúdo do webhook para um servidor em que um serviço externo está em execução.
  2. O serviço externo padroniza as configurações necessárias e provisiona recursos.
  3. O serviço dispara um GitHub Actions fluxo de trabalho no repositório.
  4. O fluxo de trabalho executa Integração Contínua (CI), implanta modelos ou configura o escaneamento.

Cada componente lida com uma camada diferente de automação.

Quando usar cada tipo de automação

Use um GitHub App quando precisar de:

  • Autenticação ou permissão para agir em vários repositórios
  • Integração com sistemas externos
  • Automações controladas por webhook
  • Fluxos de trabalho de longa duração ou de toda a empresa
  • Auditoria e separação de identidade

Use automações externas quando precisar:

  • Lógica executada continuamente ou fora de GitHub
  • Integração com sistemas internos

Use GitHub Actions quando precisar:

  • Pipelines de CI/CD
  • Automação com escopo de repositório
  • Verificações automatizadas vinculadas a eventos de repositório
  • Execução da lógica usando a infraestrutura de runner de GitHub

Use GitHub Apps e GitHub Actions juntos quando:

  • Um fluxo de trabalho deve agir além das permissões padrão do repositório
  • Um(a) GitHub App precisa disparar um fluxo de trabalho
  • A lógica externa orquestra a execução dentro do repositório
  • Políticas ou fluxos de trabalho corporativos exigem tanto identidade quanto tempo de execução

Próximas etapas

Saiba como projetar e gerenciar GitHub Apps no nível empresarial em Criando aplicativos GitHub para sua empresa.