What\'s the difference between these three terms? My university provides the following definitions:
Continuous Integration basically just means that
Source: https://thenucleargeeks.com/2020/01/21/continuous-integration-vs-continuous-delivery-vs-continuous-deployment/
What is Continuous Integration Continuous Integration is a process or a development practice of automated build and automated test i.e. A developer is required to commit his code multiple times into a shared repository where each integration is verified by automated build and test.
If the build fails/success it is notified to a developer and then he can take relevant actions.
What is Continuous Delivery Continuous Delivery is the practise where we keep our code deployable at any point which has passed all the test and has all the required configuration to push the code to production but hasn’t been deployed yet.
What is Continuous Deployment With the help of CI we have created s build for our application and is ready to push to production. In this step our build is ready and with CD we can deploy our application directly to QA environment and if everything goes well we can deploy the same build to production.
So basically, Continuous deployment is one step further than continuous delivery. With this practice, every change which passes all stages of your production pipeline is released to your customers.
Continuous Deployment is a combination of Configuration Management and Containerization.
Configuration Management: CM is all about maintaining the configuration of server which will be compatible to application requirement.
Containerization: Containerization is a set of tolls which will maintain consistency across the environment.
Img source: https://www.atlassian.com/