Skip to main content

Sobre a integração contínua com o GitHub Actions

Você pode criar fluxos de trabalho de integração contínua (CI) personalizados diretamente no repositório do GitHub com o GitHub Actions.

Note

No momento, não há suporte para executores hospedados no GitHub no GitHub Enterprise Server. Você pode ver mais informações sobre o suporte futuro planejado no GitHub public roadmap.

Sobre integração contínua

A integração contínua (CI, Continuous Integration) é uma prática de software que exige commits frequentes de códigos para um repositório compartilhado. Fazer commits de códigos com frequência detecta erros com mais antecedência e reduz a quantidade de código necessária para depuração quando os desenvolvedores chegam à origem de um erro. As atualizações frequentes de código também facilitam o merge de alterações dos integrantes de uma equipe de desenvolvimento de software. Assim, os desenvolvedores podem se dedicar mais à gravação de códigos e se preocupar menos com erros de depuração ou conflitos de merge.

Ao fazer commit do seu repositório, você pode continuamente compilar e testar o código para garantir que o commit não insira erros. Seus testes podem incluir linters de código (que verificam formatação de estilo), verificações de segurança, cobertura de código, testes funcionais e outras verificações personalizadas.

Para compilar e testar seu código, é necessário usar um servidor. Você pode criar e testar atualizações no local antes de fazer push do código para um repositório, ou pode usar um servidor de CI que verifica os novos commits de código em um repositório.

Sobre integração contínua usando GitHub Actions

O CI que usa o GitHub Actions oferece fluxos de trabalho que podem criar o código no seu repositório e executar seus testes. Os fluxos de trabalho podem ser executados em máquinas virtuais hospedadas em GitHub ou em máquinas que você mesmo pode hospedar. Para obter mais informações, confira "Usar executores hospedados no GitHub" e "Sobre executores auto-hospedados."

Você pode configurar seu fluxo de trabalho de CI para ser executado quando ocorrer um evento do GitHub (por exemplo, quando o novo código é enviado por push para o repositório), de acordo com um agendamento definido ou quando um evento externo ocorre usando o webhook de expedição do repositório.

GitHub Enterprise Server executa seus testes de CI e fornece os resultados de cada teste no pull request para que você possa ver se a mudança no seu branch introduz um erro. Quando todos os testes de CI em um fluxo de trabalho forem aprovados, as alterações que passaram por push estarão prontas para a revisão de um integrante da equipe ou para o merge. Se algum teste falhar, uma de suas alterações pode ter causado a falha.

Ao configurar o CI no seu repositório, GitHub Enterprise Server analisa o código no seu repositório e recomenda fluxos de trabalho CI baseados no idioma e na estrutura do seu repositório. Por exemplo, se você usar o Node.js, o GitHub Enterprise Server sugerirá um modelo de fluxo de trabalho que instala os pacotes do Node.js e executa seus testes. Você pode usar o modelo de fluxo de trabalho inicial de CI sugerido pelo GitHub Enterprise Server, personalizar o modelo de fluxo de trabalho sugerido ou criar o seu próprio arquivo de fluxo de trabalho personalizado para executar seus testes de CI.

Além de ajudá-lo a configurar fluxos de trabalho de CI para seu projeto, você pode usar GitHub Actions para criar fluxos de trabalho ao longo de todo o ciclo de vida de desenvolvimento do software. Por exemplo, você pode usar ações para implantar, criar pacotes ou lançar uma versão do seu projeto. Para obter mais informações, confira "Escrevendo fluxos de trabalho".

Para obter uma definição de termos comuns, confira "Entendendo o GitHub Actions".

Modelos de fluxo de trabalho

O GitHub Enterprise Server oferece modelos de fluxo de trabalho de CI para uma série de linguagens e estruturas.

Navegue pela lista completa de modelos de fluxo de trabalho de CI oferecidos pelo GitHub no repositório actions/starter-workflows em GitHub.com.

Leitura adicional