Meu ponto de partida
Eu gosto de pipeline que tenha poucas etapas, mas cada uma com papel claro: validar, empacotar, publicar e implantar. Complexidade sem motivo costuma enfraquecer a confianca do time.
Etapas que eu considero basicas
- Instalar dependencias e preparar ambiente.
- Rodar lint e testes relevantes.
- Gerar imagem Docker versionada.
- Publicar a imagem em registry.
- Atualizar deploy no Kubernetes com rastreabilidade.
O que eu evitaria
- Pipeline com dezenas de etapas sem ganho real.
- Deploy sem versionamento claro de imagem.
- Segredo espalhado em job ou script solto.
- Rollback improvisado.
Por que isso conversa com minha experiencia
Minha experiencia com plataforma, DevSecOps e ambiente cloud me ensinou que o pipeline precisa ser uma extensao da rotina de engenharia. Se ele gera medo, ele esta mal desenhado.
O melhor pipeline nao e o mais impressionante no diagrama. E o que o time usa sem receio para entregar mudanca com consistencia.
Minha regra pratica
Se eu nao consigo explicar em poucos minutos como o pipeline sobe, valida e volta atras, ele provavelmente esta complicado demais.