Skip to content
Latchkey

O que é um pull request pipeline?

Um pull request pipeline é o conjunto de verificações automatizadas que rodam em uma mudança proposta antes de ela ter permissão de ser mesclada na branch principal.

Quando você abre um pull request, geralmente vê uma lista de verificações rodando, buildando, testando, fazendo linting. Esse é o pull request pipeline: o CI rodando na sua mudança proposta para que problemas sejam detectados antes, e não depois, de a mudança se juntar à base de código compartilhada.

O que é

Um pull request pipeline é um pipeline de CI acionado ao abrir ou atualizar um pull request. Ele builda e testa a mudança proposta, frequentemente contra um merge da mudança com a branch de destino, e reporta os resultados como status checks no PR. Sua função é verificar que a mudança é segura para merge.

O que ele tipicamente roda

  • Buildar o código para confirmar que compila.
  • Rodar unit e integration tests.
  • Rodar linters e verificações de formatação.
  • Rodar scans de segurança ou de dependências.
  • Reportar cada resultado como um status check no PR.

Um exemplo

Um desenvolvedor faz push de um commit para um pull request. O pipeline builda a mudança, roda a suíte de testes em várias versões de linguagem em paralelo e publica cinco checks verdes. Um revisor vê os checks passarem, revisa o código e faz o merge com a confiança de que a mudança não quebra o build.

Por que protege a branch principal

A branch principal deve estar sempre em um estado sabidamente bom, porque todos constroem sobre ela. Um pull request pipeline impõe isso ao verificar cada mudança antes do merge. Combinado com branch protection, ele torna um pipeline que passa uma precondição para o merge, de modo que código quebrado não pode chegar ao trunk.

Mantendo-o rápido

Como desenvolvedores aguardam essas verificações antes de fazer merge, a velocidade do pipeline afeta diretamente a rapidez com que um time entrega. Paralelizar testes e usar runners rápidos e confiáveis, uma área em que plataformas de runner gerenciado como a Latchkey focam, mantém o PR pipeline rápido para que ele ajude em vez de atrapalhar.

Principais conclusões

  • Um PR pipeline roda verificações de CI em uma mudança antes do merge.
  • Ele reporta resultados de build, teste e scan como status checks.
  • Ele mantém a branch principal saudável ao proteger cada merge.

Guias relacionados