Skip to content
Latchkey

O Que É Pipeline as Code?

Pipeline as code significa definir seu pipeline de CI/CD em arquivos de configuração versionados que vivem junto do código da sua aplicação.

As primeiras ferramentas de CI eram configuradas clicando por uma UI web, o que tornava os pipelines difíceis de revisar, copiar ou recuperar. Pipeline as code move essa configuração para arquivos no seu repositório, de modo que o pipeline é tratado como qualquer outro código.

A ideia central

Em vez de configurar jobs em um dashboard, você escreve a definição do pipeline em um arquivo, muitas vezes YAML, e faz commit dele no seu repositório. O sistema de CI lê esse arquivo para saber o que rodar. O pipeline se torna parte da base de código, versionado e revisado junto da aplicação.

Um exemplo

A pipeline defined in a YAML file
name: CI
on: push
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: make build
      - run: make test

Como funciona na prática

Quando o arquivo muda, o pipeline muda, no mesmo commit, revisado no mesmo pull request. Você pode ver exatamente quem mudou o processo de build e por quê. Fazer branch do repositório também faz branch do pipeline, então um branch de feature pode testar mudanças no pipeline com segurança antes que cheguem à linha principal.

Por que supera uma UI

  • Controle de versão: toda mudança no pipeline é rastreada e revisável.
  • Reprodutibilidade: o pipeline viaja com o código, incluindo o histórico.
  • Reuso: templates e arquivos compartilhados cortam a duplicação.
  • Recuperação: restaurar o repo restaura o pipeline.

Por que importa

Pipeline as code traz a disciplina da engenharia de software, revisão, teste, histórico de versões, para o próprio processo de entrega. Ela também torna o pipeline portátil e autodocumentado: um novo engenheiro pode ler o arquivo e entender exatamente como o projeto é construído e entregue.

Principais conclusões

  • Pipeline as code define o CI/CD em arquivos versionados.
  • Mudanças no pipeline são revisadas e rastreadas como código de aplicação.
  • Ela melhora a reprodutibilidade, o reuso e a recuperabilidade.

Guias relacionados