Observação: Executores hospedados em GitHub não são atualmente compatíveis com GitHub Enterprise Server. Você pode ver mais informações sobre suporte futuro planejado no Itinerário público do GitHub.
Visão geral do exemplo
Este artigo usa um exemplo de fluxo de trabalho para demonstrar algumas das principais funcionalidades da CI de GitHub Actions. Quando esse fluxo de trabalho é acionado, ele executa automaticamente um script que verifica se o site Docs de GitHub tem algum link quebrado.
O diagrama a seguir mostra uma visão de alto nível das etapas do fluxo de trabalho e como elas são executadas dentro do trabalho:
Características utilizadas neste exemplo
O exemplo de fluxo de trabalho demonstra os seguintes recursps de GitHub Actions:
Funcionalidade | Implementação |
---|---|
Acionando um fluxo de trabalho para funcionar automaticamente: | push |
Acionando um fluxo de trabalho para funcionar automaticamente: | pull_request |
Executando manualmente um fluxo de trabalho a partir da interface do usuário: | workflow_dispatch |
Definindo permissões para o token: | permissões |
Controlando quantas execuções de fluxo de trabalho ou trabalhos podem ser executados ao mesmo tempo: | concorrência |
Executando o trabalho em diferentes corredores, dependendo do repositório: | runs-on |
Clonando o repositório para o executor: | actions/checkout |
Instalando o nó no executor: | actions/setup-node |
Usando a ação de terceiros: | trilom/file-changes-action |
Exemplo de fluxo de trabalho
O fluxo de trabalho a seguir foi criado pela equipe de Engenharia de GitHub Para revisar a versão mais recente deste arquivo no repositório github/docs
, consulte link-check-all.yml
.
Observação: Cada linha deste fluxo de trabalho é explicada na próxima seção em "Compreendendo o exemplo".
|
Entendendo o exemplo
A tabela a seguir explica como cada um desses recursos são usados ao criar um fluxo de trabalho de GitHub Actions.
Código | Explicação |
---|---|
|
O nome do fluxo de trabalho como ele aparecerá na aba "Ações" do repositório de GitHub. |
|
A palavra-chave 'on' permite definir os eventos que acionam quando o fluxo de trabalho é executado. Você pode definir vários eventos aqui. Para obter mais informações, consulte "Acionando um fluxo de trabalho." |
|
Adicione o evento "workflow_dispatch" se você quiser poder executar manualmente este fluxo de trabalho a partir da interface do usuário. Para obter mais informações, consulte |
|
Adicione o evento "push", para que o fluxo de trabalho seja executado automaticamente toda vez que um commit for enviado por push para uma branch denominado "main". Para obter mais informações, consulte 'push'. |
|
Adicione o evento "pull_request", para que o fluxo de trabalho seja executado automaticamente toda vez que um pull request for criado ou atualizado. Para obter mais informações, consulte 'pull_request'. |
|
Modifica as permissões padrão concedidas a "GITHUB_TOKEN". Isso vai variar dependendo das necessidades do seu fluxo de trabalho. Para obter mais informações, consulte "Atribuindo permissões a trabalhos." |
|
Cria um grupo de concorrência para eventos específicos e usa o operador "||" para definir valores de recuo. Para obter mais informações, consulte "Usando concorrência." |
|
Cancela qualquer trabalho ou fluxo de trabalho em execução no mesmo grupo de concorrência. |
|
Agrupa todos os trabalhos executados no arquivo do fluxo de trabalho. |
|
Define uma trabalho com o ID "check-links" que é armazenado dentro da chave "jobs". |
|
Configura o trabalho a ser executado em um executor hospedado em GitHub ou em um executor auto-hospedado, dependendo do repositório que executa o fluxo de trabalho. Neste exemplo, o trabalho será executado em um runner auto-hospedado se o repositório for denominado "docs-internal" e estiver dentro da organização "github". Se o repositório não corresponder a este caminho, então ele será executado em um executor "ubuntu-latest" hospedado por GitHub. Para obter mais informações sobre essas opções consulte "Escolhendo o executor para um trabalho". |
|
Agrupa todos as etapas que serão executados como parte do trabalho |
|
A palavra-chave "uses" diz para o trabalho recuperar a ação denominada "actions/checkout". Esta é uma ação que verifica seu repositório e o faz o download do runner, permitindo que você execute ações contra seu código (como, por exemplo, ferramentas de teste). Você deve usar a ação de checkout sempre que o fluxo de trabalho for executado no código do repositório ou você estiver usando uma ação definida no repositório. |
|
Esta etapa usa a ação |
|
A palavra-chave |
|
Usa a ação |
|
Lista o conteúdo de |
|
Esta etapa usa o comando 'executar' para executar um script armazenado no repositório em 'script/rendered-content-link-checker.mjs' e passa todos os parâmetros necessários para executar. |
|
Esta etapa também usa o comando |
Próximas etapas
- Para aprender sobre os conceitos de GitHub Actions, consulte "Entendendo o GitHub Actions."
- Para mais guias passo a passo para criar um fluxo de trabalho básico, consulte "Início rápido para o GitHub Actions".
- Se você estiver confortável com os princípios básicos de GitHub Actions, você pode aprender sobre fluxos de trabalho e suas características em "Sobre fluxos de trabalho. "