I / CD is an essential part of agile development process. It is widely used to enhance testing, customer satisfaction and improve software quality.
Would you like to have your next software update on a CD which is built, tested and pre-packed delivered to your home ?
So you don't need to go through the hassle of installing it, trouble shooting it; and even you can rectify the famous IT proverb:
It works on my system but not on your server!
Here we present the complete guide for installing and deploying a CI/CD system with pipelines.
What is CI/CD?
CI/CD stands for continuous integration and continuous deployment. It is a DevOps operation for immediately integrating any update to the software. But before this update the process goes though a serious of intermediate steps usually called Jobs of building, integrating and testing.
A subtle difference between Continuous Delivery and Continuous Deployment is that the former run all the tests and integrate the code bu it does not deploy it to the staging/production server and a manual interaction/approval is needed while the later also deploy the solution to the live servers.
In other words Continuous Delivery simply means the latest update is delivered but not automatically deployed to your online system but Continuous Deployment will automatically deploy (and merge to the main branch after testing etc ) without the requirement of any human intervention.
Installations
We will use Gitlab as the code and its collaboration platform, we will also use its CI/CD pipelines capabilities. In addition we will use docker containers and we will delivered ready made docker images to your door steps. To do so we have another nice feature of Gitlab called Image registry.
Luckily we have docker images available which we can take help from to deploy this whole scenario.