O Que É um Job de Rollback? Revertendo um Deploy Ruim
Um job de rollback restaura a versão anterior conhecida como boa quando um deploy dá errado, devolvendo o sistema em execução a um estado funcional rapidamente.
Deploys falham. A questão é com que rapidez você consegue se recuperar. Um job de rollback é o botão de desfazer do pipeline: ele reimplanta a última versão conhecida como boa para substituir um release quebrado. Um rollback rápido e confiável transforma um incidente em produção de uma longa indisponibilidade em um breve soluço, e é por isso que pipelines maduros tratam o rollback como um job de primeira classe.
O que um job de rollback faz
Ele faz o deploy do artifact bom anterior no lugar do atual quebrado. Como esse artifact já foi construído e validado, fazer rollback costuma ser mais rápido e seguro do que corrigir para frente sob pressão.
Como o rollback permanece rápido
- Mantenha os artifacts anteriores disponíveis para reimplantar.
- Torne os deploys idempotentes para que reimplantar seja seguro.
- Automatize o rollback em vez de fazê-lo à mão.
- Dispare-o a partir de um sinal claro (health check falho).
Um exemplo rápido
Após o deploy de app:${NEW}, um post-deployment check falha. O job de rollback reimplanta app:${PREVIOUS}, a última versão que passou em produção, restaurando o serviço enquanto a equipe investiga.
Rollback vs roll forward
Fazer rollback retorna a um estado conhecido como bom imediatamente. Fazer roll forward corrige o bug e reimplanta. O rollback costuma ser a primeira jogada certa durante um incidente porque restaura o serviço mais rápido; a correção pode vir com calma depois.
Confiabilidade do rollback
Um rollback precisa funcionar mesmo quando as coisas já estão quebradas, então ele tem de ser confiável. Agentes estáveis e retentativas em erros transitórios importam aqui; runners gerenciados (Latchkey) reexecutam falhas de infraestrutura para que um rollback não seja ele mesmo descarrilado por um runner instável no meio de um incidente.
Principais conclusões
- Um job de rollback reimplanta a última versão conhecida como boa após um deploy ruim.
- Geralmente é mais rápido e seguro do que corrigir para frente sob pressão.
- Mantenha os artifacts anteriores disponíveis e automatize o rollback para permanecer rápido.