Tags: CI, CD, Continuous Integration, Continuous Deployment, Continuous Delivery
CI/CD stands for Continuous Integration and Continuous Deployment or Continuous Delivery. These practices are interconnected but serve different stages in the development lifecycle of applications.
CI is the practice of frequently integrating code changes into a shared repository, ideally several times a day. The main goal of CI is to detect and fix integration errors as quickly as possible. Automated build and test steps are integral parts of CI, ensuring that new code changes do not break the application. CI helps maintain a high-quality codebase and accelerates the development process by providing immediate feedback on the integration status.
CD extends CI by automatically deploying all code changes to a testing or production environment after the build stage. There are two main concepts within CD:
Continuous Deployment: This practice goes one step further than continuous delivery. Here, every change that passes all stages of your production pipeline is released to your customers automatically, without explicit approval required for each release. It's a more automated approach, ensuring that new features, fixes, and changes are quickly delivered to users in a seamless manner.
Continuous Delivery: This is the practice of automating the entire software release process. The code changes are automatically built, tested, and prepared for a release to production. It enables developers to ensure that their code is always in a deployable state. The final deployment to production often requires manual approval, although the process up to that point is automated.
In summary, CI/CD is a methodology that encompasses both Continuous Integration and Continuous Deployment/Delivery. CI is the first part of the process, ensuring code is always ready for deployment, while CD takes the process further by automating the deployment of this code to various environments.
Follow the links below