O Que É um Workflow File? O Documento Que Define um Pipeline
Um workflow file é o documento, geralmente YAML, que define um pipeline: quando ele executa, quais jobs tem e quais steps cada job realiza.
Um workflow file é onde o pipeline-as-code se torna concreto. É o arquivo real que você escreve para dizer ao sistema de CI o que fazer. A estrutura é consistente entre plataformas: uma seção de triggers, um conjunto de jobs e steps dentro de cada job. Aprender a ler um workflow file é aprender a ler um pipeline.
Anatomia de um workflow file
- Triggers: os eventos que iniciam o workflow.
- Jobs: unidades de trabalho independentes, frequentemente paralelas.
- Steps: comandos ou actions ordenados dentro de cada job.
- Config: seleção de runner, variáveis, permissions.
Como ele é descoberto
A plataforma escaneia um local conhecido em busca de workflow files. O GitHub Actions lê todo .yml sob .github/workflows/. Cada arquivo é um workflow separado com seus próprios triggers, então um repo pode ter muitos.
Um exemplo rápido
Um arquivo começa com on: (o trigger), depois jobs:, e sob cada job um runs-on: mais uma lista de steps:. Esse punhado de chaves descreve um pipeline inteiro em algumas dezenas de linhas legíveis.
Um repo, muitos workflow files
Dividir preocupações entre arquivos mantém cada um legível: um arquivo de CI para testes, um arquivo de release para publicar, um arquivo nightly para execuções agendadas. Cada um dispara de forma independente, então eles não interferem.
Workflow file vs execução de pipeline
O workflow file é a definição estática; uma execução é uma execução dele. Editar o arquivo muda execuções futuras. O arquivo é a receita; a execução é o prato.
Principais conclusões
- Um workflow file é o documento YAML que define um pipeline.
- Ele tem triggers, jobs e steps, descobertos a partir de um local conhecido.
- Um repo pode conter muitos workflow files, cada um disparando de forma independente.