Skip to content
Latchkey

O Que É um Nightly Build? Pipelines Agendados de Fim de Dia

Um nightly build é um pipeline agendado, normalmente executado à noite, que realiza verificações mais pesadas ou lentas do que o pipeline rápido de cada commit.

Nem toda verificação pertence a cada commit. Alguns conjuntos de testes levam uma hora; algumas execuções de integração precisam de um ambiente completo. Nightly builds dão um lar a essas verificações lentas: uma execução agendada, geralmente durante a noite quando ninguém está esperando, que exercita a base de código mais a fundo do que o pipeline rápido por commit.

Por que executar à noite

Feedback rápido em cada commit mantém os desenvolvedores desbloqueados, mas só permite verificações rápidas. Nightly builds capturam o resto: conjuntos de integração completos, testes de longa duração, benchmarks de performance e amplas matrizes de compatibilidade que seriam lentas demais por commit.

O que um nightly build costuma fazer

  • Executa o conjunto de testes completo e lento.
  • Testa contra muitas versões de OS e de dependências.
  • Gera release candidates ou pacotes de preview.
  • Executa scans de segurança e de dependências.

Um exemplo rápido

Um trigger agendado como cron: "0 2 * * *" executa o pipeline às 2h diariamente. O workflow noturno pode reutilizar os mesmos jobs do CI, mas com uma matrix maior e uma seleção de testes mais longa habilitada.

Agindo sobre os resultados do nightly

Um nightly build só ajuda se alguém o ler. Direcione as falhas para um canal que o time verifica todas as manhãs, para que uma regressão capturada durante a noite seja corrigida antes de se espalhar. Um nightly vermelho e silencioso é computação desperdiçada.

Nightly builds e custo

Execuções noturnas podem ser grandes, então representam uma parcela real do gasto com CI. Executá-las fora de pico e em runners eficientes ajuda. Runners gerenciados (Latchkey) medem o uso para que você veja exatamente quanto a matrix noturna custa e a dimensione corretamente.

Principais conclusões

  • Um nightly build é uma execução agendada, geralmente noturna, de verificações mais pesadas.
  • Ele hospeda os conjuntos lentos que seriam custosos demais em cada commit.
  • Direcione falhas do nightly para onde as pessoas as leem, ou a execução é desperdiçada.

Guias relacionados