Integração contínua vs entrega vs deployment
Os três termos formam uma escada: cada um automatiza mais do caminho até produção do que o anterior. O "CD" em CI/CD é ambíguo de propósito.
As pessoas dizem "CI/CD" como uma palavra só, mas isso esconde três práticas distintas com custos e garantias diferentes. Saber onde cada uma termina evita mal-entendidos sobre o que seu pipeline realmente faz.
Integração contínua
CI para em "verificado". Cada alteração recebe merge em uma branch compartilhada com frequência e é construída e testada automaticamente. O resultado é a confiança de que a base de código está saudável - não um release.
Entrega contínua
Entrega contínua estende o CI para que cada alteração aprovada seja automaticamente empacotada e comprovadamente implantável, até o portão de produção. O push final para produção é uma decisão humana deliberada, muitas vezes com um clique.
Deployment contínuo
Deployment contínuo remove o portão humano: cada alteração que passa no pipeline vai direto para produção automaticamente. Exige testes fortes, boa observabilidade e rollback rápido, porque não há um ponto de verificação manual.
Escolhendo onde parar
- Só CI é o mínimo que toda equipe deveria ter.
- Entrega contínua serve a equipes que querem releases frequentes, mas com um "go" humano.
- Deployment contínuo serve a equipes maduras com alta confiança nos testes e rollback instantâneo.
Principais conclusões
- CI termina em "testado e saudável", não em lançado.
- Entrega contínua mantém o software sempre pronto para lançamento com um push final manual.
- Deployment contínuo entrega automaticamente em produção cada alteração aprovada.
- O nível certo depende da sua confiança nos testes e da velocidade de rollback.