In this video, we'll talk about CICD, a common DevOps technology.
CICD is Continuous Integration and Continuous Delivery, sometimes also referred to as Continuous
Deployment.
It's a core DevOps element that enforces automation in building, testing and deployment
of applications.
And the CICD pipeline is the backbone of modern DevOps operations.
In CI, all developers merge code changes in a central repository multiple times a day
to ensure consistency.
And Git is a common repository technology used for that.
CD automates the software release process based on these frequent changes.
And to do so, the CD includes automated infrastructure provisioning and deployment.
Now CD can stand for Continuous Delivery.
That is where the configuration or the code is made available and the final step of implementation
needs to be done by a person.
And Continuous Deployment is where it happens all automatically, including the deployment
where no longer the work of a person is involved.
Let's talk about CI and its tools.
First, a version control system, such as Git, allows developers to work with branches, which
are later merged into the main code.
You learned about it in lesson 19 of this course.
CI automation is used to watch the repository for changes.
And there are different options to do so.
Webhooks on Docker image repositories, for instance, detect changes automatically and
can update an application.
Jenkins is a very common CICD solution.
And others, such as Tectal, which integrates very well in Kubernetes, or GitLab Actions
can be used for CI.
When CI is automated, changes must be verified.
And that is what happens in a pipeline that goes through different phases.
Now let's talk about CD and its tools.
At the end of the continuous integration pipeline, there is continuous delivery, which ensures
that software is published once it is ready.
A deployable version is created every time the pipeline runs successfully.
And that can happen multiple times a day.
Continuous delivery can be enhanced to continuous deployment, where the release is not only
published but also deployed without further human intervention.