
Hello, there! Você já ouviu as siglas CI e CD? Elas aparecem o tempo todo em times de DevOps quando falamos de automação, pipelines e entrega de software. Se você estuda ou trabalha com desenvolvimento, entender o que essas siglas significam e como elas são usadas é fundamental para se comunicar bem com o seu time.
Are you ready to learn? So let's get it started!
Qual é a diferença entre CI e CD?
CI - Continuous Integration
A sigla CI significa "Continuous Integration", ou seja, "Integração Contínua" em português.
Essa sigla é usada quando falamos em integrar constantemente o novo código ao repositório principal, para garantir que tudo vai continuar funcionando corretamente.
Em inglês, "continuous" significa "contínuo", ou seja, uma coisa que acontece o tempo todo, e "integration" vem de "to integrate", que quer dizer "integrar". Então CI é a prática de integrar o código de forma contínua, mas sem deixar de fazer testes automáticos para validar cada mudança.
Take a look at some examples:
- We use CI to run automated tests on every commit. (Usamos CI para rodar testes automatizados a cada commit.)
- Continuous Integration helps catch bugs early. (A Integração Contínua ajuda a encontrar bugs mais cedo.)
- CI pipelines improve code quality and team collaboration. (Pipelines de CI melhoram a qualidade do código e a colaboração do time.)
CD - Continuous Delivery / Deployment
Já a sigla CD tem dois significados: "Continuous Delivery" ou "Continuous Deployment". Isso pode gerar uma certa confusão, então tome cuidado! "Continuous Delivery" significa "Entrega Contínua", e "Continuous Deployment" significa "Implantação Contínua".
A palavra "delivery" em inglês está relacionada a "entregar", enquanto "deployment" vem de "to deploy", que significa "implantar" ou "colocar em produção".
Ou seja, "Continuous Delivery" é uma "Entrega Contínua" para garantir que o software esteja sempre pronto para ser colocado em produção, mas a decisão final ainda é humana. Essa é uma etapa que acontece depois da CI.
Já o "Continuous Deployment" vai um passo além e coloca automaticamente cada mudança em produção, desde a integração até a liberação para o usuário final, sem nenhuma intervenção manual.
Take a look:
- With CD, our application is always ready to be released. (Com CD, nossa aplicação está sempre pronta para ser lançada.)
- Continuous Deployment pushes every approved change to production. (A Implantação Contínua envia cada mudança aprovada diretamente para produção.)
- CD reduces the time between writing code and delivering value. (CD reduz o tempo entre escrever código e entregar valor.)
Resumindo, a CI foca em testar e integrar o código com frequência. Já a CD foca em levar esse código até produção de forma rápida e segura.
Can you think of tools that help with CI and CD? (Você consegue pensar em ferramentas que ajudam com CI e CD?)
Continue com a gente no nosso artigo "Inglês ESSENCIAL para quem trabalha com engenharia de MACHINE LEARNING". See you!