Observação: no momento, não há suporte para os executores hospedados no GitHub no GitHub Enterprise Server. Você pode ver mais informações sobre o suporte futuro planejado no GitHub public roadmap.
Visão geral de exemplo
Este artigo usa um fluxo de trabalho de exemplo para demonstrar alguns dos principais recursos de CI do GitHub Actions. Quando esse fluxo de trabalho é disparado, ele testa o código usando uma matriz de combinações de teste com npm test
.
O diagrama a seguir mostra uma visão de alto nível das etapas do fluxo de trabalho e como elas são executadas no trabalho:
Recursos usados neste exemplo
O fluxo de trabalho de exemplo demonstra os seguintes recursos do GitHub Actions.
Recurso | Implementação |
---|---|
Como executar um fluxo de trabalho manualmente usando a interface do usuário | workflow_dispatch |
Fluxo de trabalho de exemplo
O fluxo de trabalho a seguir foi criado pela equipe de engenharia de Docs do GitHub. Para revisar a versão mais recente deste arquivo no repositório github/docs
, confira test.yml
.
Observação: cada linha desse fluxo de trabalho é explicada na próxima seção em "Noções básicas sobre o exemplo".
|
Compreendendo o exemplo
A tabela a seguir explica como cada um desses recursos é usado ao criar um fluxo de trabalho GitHub Actions.
Código | Explicação |
---|---|
|
O nome do fluxo de trabalho, como aparece na guia "Ações" do repositório do GitHub. |
|
A palavra-chave |
|
Adicione o evento |
|
Adicione o evento |
|
Adicione o evento |
|
Modifica as permissões padrão concedidas a |
|
Cria um grupo de simultaneidade para eventos específicos e usa o operador |
|
Cancela todos os trabalhos ou fluxos de trabalho em execução no mesmo grupo de simultaneidade. |
|
Agrupa todos os trabalhos executados no arquivo de fluxo de trabalho. |
|
Define um trabalho com a ID |
|
Configura o trabalho a ser executado em um executor hospedado no GitHub ou um executor auto-hospedado, dependendo do repositório que executa o fluxo de trabalho. Neste exemplo, o trabalho será executado em um executor auto-hospedado se o repositório for chamado |
|
Define o número máximo de minutos para permitir que o trabalho seja executado antes de ser cancelado automaticamente. Para obter mais informações, confira |
|
Esta seção define a matriz de build dos trabalhos. |
|
A configuração de |
|
Cria uma matriz chamada |
|
Agrupa todas as etapas que serão executadas durante o trabalho |
|
A palavra-chave |
|
Se o repositório atual for o |
|
Se o repositório atual for o |
|
Se o repositório atual for o |
|
Esta etapa executa um comando para fazer check-out de objetos LFS do repositório. |
|
Esta etapa usa a ação |
|
Esta etapa executa um comando do shell que usa uma saída da etapa anterior para criar um arquivo contendo a lista de arquivos alterados na solicitação de pull. |
|
Essa etapa usa a ação |
|
Esta etapa executa o comando do shell |
|
Esta etapa usa a ação |
|
Esta etapa executa o script de build. |
|
Esta etapa executa os testes usando |
Próximas etapas
- Para aprender sobre o GitHub Actions, confira "Entendendo o GitHub Actions".
- Para obter um guia passo a passo de criação de um fluxo de trabalho básico, confira "Início rápido para GitHub Actions".
- Se você já entende os conceitos básicos do GitHub Actions, saiba mais sobre os fluxos de trabalho e seus recursos em "Sobre fluxos de trabalho".