Skip to content
Latchkey

O Que É um Downstream Pipeline? Um Pipeline Disparando Outro

Um downstream pipeline é um pipeline que outro pipeline dispara, permitindo encadear builds entre jobs ou até entre projetos separados.

Às vezes o término de um pipeline deve iniciar outro. Uma biblioteca compartilhada é construída, então as aplicações que dependem dela são reconstruídas. O stage central de um monorepo passa, então pipelines específicos de serviços são disparados. O pipeline disparado é o downstream pipeline; o que o disparou é o upstream. Esse encadeamento mantém builds relacionados conectados sem coordenação manual.

Upstream e downstream

O pipeline upstream executa primeiro e, em caso de sucesso, dispara o downstream pipeline. A execução downstream pode receber variáveis ou artifacts do upstream, então constrói sobre o que veio antes em vez de começar às cegas.

Quando encadear pipelines

  • Uma biblioteca compartilhada da qual várias aplicações dependem.
  • Um build multi-projeto onde um projeto alimenta outros.
  • Separar um pipeline central rápido de outros mais lentos por serviço.

Um exemplo rápido

No GitLab você dispara um downstream pipeline com um job trigger: apontando para outro projeto. No GitHub Actions você usa um evento repository_dispatch ou workflow_run para que um workflow finalizado inicie o próximo.

Downstream vs parent-child

Um downstream pipeline frequentemente está em um projeto diferente; um parent-child pipeline geralmente está dentro do mesmo projeto, dividido para clareza. Ambos encadeiam execuções, mas o downstream enfatiza cruzar fronteiras de projeto.

Mantendo as cadeias observáveis

Pipelines encadeados podem ocultar falhas: um sucesso upstream mascara uma falha downstream se ninguém os vincular. Um bom ferramental mostra toda a cadeia para que você rastreie um problema da execução disparada de volta até sua origem.

Principais conclusões

  • Um downstream pipeline é um disparado por outro pipeline (upstream).
  • O encadeamento conecta builds relacionados entre jobs ou projetos automaticamente.
  • Torne toda a cadeia observável para que falhas downstream não fiquem ocultas.

Guias relacionados