Quantcast
Channel: Cloud Training Program
Viewing all articles
Browse latest Browse all 1902

CI/CD Pipeline | Continuous Integration | Continuous Deployment

$
0
0

Loading

A CI/CD Pipeline, or Continuous Integration and Continuous Deployment, is the backbone of the modern DevOps environment. It bridges the gap between development and operations teams by automating the building, testing, and deployment of applications.

In this blog, we are going to cover the terminologies of a CI/CD pipeline such as Continuous Integration, Continuous Testing, Continuous Delivery/Deployment, and also the benefits of a CI/CD pipeline.

If you want to know more about DevOps certification please go through our previous blog on [DOFD] DevOps Foundation Certification Exam and everything you need to know about it.

Index:

  1. Continuous Integration
  2. Continuous Testing
  3. Continuous Delivery/Deployment
  4. Benefits of CI CD Pipeline

Continuous Integration

CI or Continuous Integration is a development practice that requires developers to check-in their code into a shared repository at least daily. What happens is, developers check-in, that is, save their code in a shared version control system such as Git, multiple times a day. Every check-in triggers an automated build-and-test sequence.

The entire process is automated and hence, minimizes human error. Any number of people can check in their code, any number of times in a day, without waiting for others to complete their coding, hence it also removes dependency.

continuous integration process

A brief overview of the steps of Continuous Integration:

  1. Developers check out code from the repository to their local machine. Ideally, they create a new branch for every new feature/change they want to implement.
  2. For every new branch, the tests are run locally in their development environments.
  3. Once all tests pass, they push the commits to the single-source repository, or a version control system.
  4. Whenever there are changes in the repository, a CI server checks those changes and performs a “build and test.” A build and test is when the CI server builds the entire system on the developer’s feature branch and runs all the unit and integration tests.
  5. The CI server notifies the team of the integration result.
  6. If there’s a failure, the team is notified.
  7. The entire process is repeated whenever there is a new code or a change in the existing code.

Continuous Testing

Continuous testing is the process of executing automated tests, continuously and repeatedly as part of the deployment pipeline. In Continuous Testing, the test scripts are written before the coding begins. Mainly, unit tests, static code analysis, security code analysis, integration tests, load, and performance tests as part of continuous testing are run in a continuous testing pipeline.

When the developer checks the code in, it triggers an automated set of unit tests that are executed. If the test fails, the build is rejected and the developer is notified. If the build passes the test, then it is deployed into the QA environment, that is, a testing environment.

Continuous Testing

Continuous Delivery/Deployment

Continuous delivery is about ensuring that every good build is potentially ready for production release, whereas Continuous deployment is about automating the release of a good build to the production environment. Let’s understand this in more detail.

Continuous Delivery is a software development practice where you build software in such a way that the software can be released to the production at any time. The benefit of continuous delivery is that the code is ready to deploy at all times. The Quality Assurance team tests if each feature is working or not, and then they manually deploy it to production on-demand. So, each and every change is not deployed on to the production.

Continuous deployment means that every change that you make, goes through the pipeline, and if it passes all the tests, it automatically gets released or deployed into production.

Continuous delivery vs continuous deployment

Also Read: CloudOps vs DevOps, Know their major differences!

Benefits of CI CD Pipeline

A CI/CD pipeline automates your software delivery process. The pipeline builds code, runs tests (CI), and safely deploys a new version of the application (CD). Automated pipelines remove manual errors, provide standardized feedback loops to developers, and enable fast product iterations.

As an individual in IT leadership, you might be wondering why the CI/CD pipeline is so important for you. The main focus of implementing a CI/CD pipeline is to deliver the software to the customers faster than ever before. The benefits of a CI/CD pipeline are:

  • Achieve faster feedback through CI tools
  • Greater visibility
  • Early bug detects

Related/References

Next Task For You

In our [DOFD] DevOps Foundation Training, we cover the Continuous Integration and Continuous Deployment in DevOps and Automation module. In this training, we also cover the Introduction to DevOps, DevOps Principle, DevOps Practices, Git, and GitHub.

Begin your journey towards becoming DevOps Foundations certified and earning a lot more in 2023 by joining our FREE CLASS.

Click on the below image to Register for the FREE CLASS Now!devops freeclass

The post CI/CD Pipeline | Continuous Integration | Continuous Deployment appeared first on Cloud Training Program.


Viewing all articles
Browse latest Browse all 1902

Trending Articles