Skip to main content

Fluxos de trabalho

Obtenha uma visão geral de alto nível dos fluxos de trabalho do GitHub Actions, incluindo gatilhos, sintaxe e recursos avançados.

Sobre fluxos de trabalho

Um fluxo de trabalho é um processo automatizado configurável que executará um ou mais trabalhos. Os fluxos de trabalho são definidos por um arquivo YAML verificado no seu repositório e será executado quando acionado por um evento no repositório, ou eles podem ser acionados manualmente ou de acordo com um cronograma definido.

Os fluxos de trabalho são definidos no diretório .github/workflows de um repositório. Um repositório pode ter vários fluxos de trabalho, cada um dos quais pode executar um conjunto diferente de tarefas, como:

  • Como criar e testar pull requests
  • Como implantar seu aplicativo sempre que uma versão for criada
  • Como adicionar um rótulo sempre que um novo problema for aberto

Noções básicas do fluxo de trabalho

Um fluxo de trabalho precisa conter os seguintes componentes básicos:

  1. Um ou mais eventos que acionarão o fluxo de trabalho.
  2. Um ou mais trabalhos, cada um deles será executado em um computador executor e executará uma série de uma ou mais etapas.
  3. Cada etapa pode executar um script que você define ou executa uma ação, que é uma extensão reutilizável que pode simplificar seu fluxo de trabalho.

Para obter mais informações sobre esses componentes básicos, confira Understanding GitHub Actions.

Diagrama de um evento que dispara o Executor 1 para executar o Trabalho 1, que dispara o Executor 2 para executar o Trabalho 2. Cada um dos trabalhos é dividido em várias etapas.

Gatilhos do fluxo de trabalho

Os acionadores de fluxo de trabalho são eventos que fazem com que um fluxo de trabalho seja executado. Esses eventos podem ser:

  • Eventos que ocorrem no repositório do fluxo de trabalho
  • Eventos que ocorrem fora do GitHub e que disparam um evento repository_dispatch no GitHub
  • Horários agendados
  • Manual

Por exemplo, você pode configurar o fluxo de trabalho para executar quando um push é feito no branch padrão do seu repositório, quando uma versão é criada, ou quando um problema é aberto.

Os gatilhos de fluxo de trabalho são definidos com a chave on. Para saber mais, confira Workflow syntax for GitHub Actions.

As etapas a seguir ocorrem para acionar a execução de um fluxo de trabalho:

  1. Um evento ocorre no seu repositório. O evento tem um SHA de commit associado e um ref de Git.
  2. O GitHub pesquisa, no diretório .github/workflows na raiz do seu repositório, os arquivos de fluxo de trabalho que estão presentes no SHA do commit associado ou na referência do Git do evento.
  3. A execução de um fluxo de trabalho é disparada para todos os fluxos de trabalho que têm valores on: correspondentes ao evento de gatilho. Alguns eventos também exigem que o arquivo do fluxo de trabalho esteja presente no branch padrão do repositório para ser executado.

Cada execução de fluxo de trabalho usará a versão do fluxo de trabalho que está presente no SHA do commit ou na ref do Git do evento. Quando um fluxo de trabalho é executado, o GitHub define as variáveis de ambiente GITHUB_SHA (SHA do commit) e GITHUB_REF (referência do Git) no ambiente do executor. Para saber mais, confira Store information in variables.

Para saber mais, confira Triggering a workflow.

Próximas etapas

Para criar seu primeiro fluxo de trabalho, confira Creating an example workflow.