Introducing Continuous Integration and Delivery (CI/CD)

Objectives

After completing this lesson, you will be able to:

  • Define continuous integration and delivery (CI/CD)

Continuous Integration and Delivery (CI/CD)

The acronym "CI/CD" combines two proven DevOps concepts for automation as part of application development that build on each other:

  • Continuous Integration (CI)
  • Continuous Delivery (CD)

In this lesson, you'll learn how these terms are defined.

Continuous Integration (CI)

Watch the video below to get an explanation about Continuous Integration and Continuous Delivery.

CI describes a software development process in which various team members integrate their contributions frequently into a single main line. Before each integration, the changes are verified through builds and automated testing. With this, you can detect errors as quickly as possible and prevent integration problems before completing the development.

The Continuous Integration process is based on several basic principles, such as using version control and automating builds, tests, and deployments. We'll take a closer look at these principles in a later lesson.

Click on each actor in the interactive activity below to find out details about each step.

As you can see from the graphic, Continuous Integration is a cycle: as soon as the CI server has sent its feedback to the developer, the flow starts over again. The developers either correct their previous code change, which must then be built and tested again, or start working on an entirely new one.

We'll have a closer look at the Continuous Integration and delivery process flows in a later lesson.

Continuous Delivery (CD)

The CD concept expands on the one of Continuous Integration. It adds the aspect that any change that has successfully passed the tests is immediately ready to be deployed to production, both from a technical and qualitative point of view.

The following graphic shows the relation between Continuous Integration and Continuous Delivery:

The continuous delivery process makes sure that the most current version of the software product is successfully built, tested, and provided in a shippable format. Based on the release decision by the development team or delivery manager, it can be shipped to customers or deployed to production at any time.

Summary

You now have a basic understanding of continuous integration and delivery and are ready to dig deeper into the topic.

Log in to track your progress & complete quizzes