Partilhar via


O que é a entrega contínua?

A entrega contínua de valor tornou-se um requisito obrigatório para as organizações. Para entregar valor aos seus usuários finais, você deve liberar continuamente e sem erros.

A entrega contínua (CD) é o processo de automatizar a compilação, o teste, a configuração e a implantação de uma compilação para um ambiente de produção. Um pipeline de liberação pode criar vários ambientes de teste ou preparo para automatizar a criação de infraestrutura e implantar novas compilações. Ambientes sucessivos suportam atividades de teste de integração, carga e aceitação do usuário progressivamente mais longas.

Ilustração de como a entrega contínua automatiza o fluxo para a produção.

Antes do CD, os ciclos de lançamento de software eram um gargalo para as equipes de aplicativos e operações. Essas equipes muitas vezes confiavam em transferências manuais que resultavam em problemas durante os ciclos de releases. Processos manuais levaram a lançamentos não confiáveis que produziram atrasos e erros.

O CD é uma prática enxuta, com o objetivo de manter a produção sempre atualizada através do caminho mais rápido desde que o novo código ou os componentes estejam disponíveis até à implantação. A automação minimiza o tempo de implantação e o tempo de mitigação (TTM) ou o tempo de correção (TTR) de incidentes de produção. Em termos enxutos, o CD otimiza o tempo de processo e elimina o tempo ocioso.

A integração contínua (CI) inicia o processo de CD. O pipeline de liberação prepara cada ambiente sucessivo para o próximo ambiente após a conclusão bem-sucedida dos testes. O pipeline de liberação de CD automatizado permite uma abordagem rápida de falha para validação, onde os testes com maior probabilidade de falhar são executados rapidamente primeiro, e os testes de execução mais longa acontecem apenas depois que os testes mais rápidos são concluídos com êxito.

As práticas complementares de infraestrutura como código (IaC) e monitoramento facilitam a CD.

Técnicas de exposição progressiva

O CD suporta vários padrões de exposição progressiva, também chamados de "controlar o raio de explosão". Essas práticas limitam a exposição a implantações para evitar o risco de problemas com a base geral de usuários.

  • O CD pode sequenciar vários anéis de implantação para exposição gradual. Um anel tenta uma implantação em um grupo de usuários e monitora sua experiência. O primeiro anel de implantação pode ser um canário para testar novas versões em produção antes de uma distribuição mais ampla. O CD automatiza a implementação de um anel para o outro.

    A implantação no próximo anel pode, opcionalmente, depender de uma etapa de aprovação manual, na qual um tomador de decisões assina as alterações eletronicamente. O CD pode criar um registo auditável da aprovação para satisfazer os procedimentos regulamentares ou outros objetivos de controlo.

  • A implantação azul/verde depende de manter uma versão azul existente ativa enquanto uma nova versão verde é implantada. Essa prática normalmente usa o balanceamento de carga para direcionar quantidades crescentes de tráfego para a implementação verde. Se o monitoramento detetar um incidente, o tráfego poderá ser redirecionado para a implantação azul ainda em execução.

  • Sinalizadores de recursos ou alternadores de funcionalidades são outra técnica para experimentação e lançamentos sombrios. Os sinalizadores de recursos ativam ou desativam recursos para diferentes grupos de usuários com base na identidade e na associação ao grupo.

Pipelines de lançamento modernos permitem que as equipes de desenvolvimento implantem novos recursos com rapidez e segurança. O CD pode remediar rapidamente problemas encontrados na produção, procedendo a uma nova implantação. Desta forma, o CD cria um fluxo contínuo de valor para o cliente.

Próximos passos