What’s the Difference? Continuous Integration, Continuous Delivery and Continuous Deployment Explained
April 19, 2022

Jayne Groll
DevOps Institute

A healthy CI/CD pipeline ensures that your DevOps journey is headed toward success. Continuous integration, continuous delivery and continuous deployment each play an important role in the CI/CD pipeline, and it's important to differentiate between each.

Understanding the unique role of each CI/CD component will set you on a path toward better software and happier customers. DevOps Institute Ambassadors always have unique insights, so I asked several of them to explain how they would describe the difference between continuous integration, continuous delivery and continuous deployment.

Helen Beal, Chief Ambassador, DevOps Institute

"Once a team has its developers committing code at least once daily, a build is automated on every commit, and the unit, integration and user acceptance tests are run automatically (and problems are prioritized for remediation), they are practicing continuous integration (CI). Now they are in a position where they can practice continuous delivery because their software is always in a releasable state. This means they can release at any point in time, likely because it's deemed best for the customer. However, it requires manual intervention. Continuous deployment is when the changed code is pushed to live automatically when it passes the tests in CI."

Marc Hornbeek, CEO and Principal Consultant, Engineering DevOps Consulting

"Continuous integration systems ensure software changes are efficiently merged, built, tested and archived to produce release candidate artifacts. Continuous delivery processes verify release candidate artifacts, prepare them together with the required infrastructure or deployment, and validate that the software releases are ready for deployment. Continuous deployment processes ensure that software releases are deployed to production safely and validate the released software once deployed."

Parveen Arora, Founder and Director, VVnT SeQuor

"Continuous integration serves the purpose of automating our builds. It's the practice of merging code changes back into the main branch as quickly and as often as possible. In this step, all code is merged as developers complete code in order to run automated builds and tests.

However, in continuous delivery all code changes are automatically deployed to the testing environment from the build stage, which practically makes this process a direct extension of continuous integration. This movement to production is a manual step.

Now a variant of continuous delivery is continuous deployment, which is the process of moving software that has been built and tested successfully into production. Continuous deployment takes the entire process of continuous delivery a step further by releasing every change that passes through the production pipeline directly to our clients. If an automated test fails, then the change will not be sent, but if everything checks out in testing, the changes are deployed automatically."

Vishnu Vasudevan, Head of Product at Opsera

"If you look at continuous integration, it's all about moving the source of your code to the build state with static code analysis and then incorporating some sort of testing. Continuous delivery is all about moving the code into production. Continuous deployment is all about how agile the process is and how the team operates. For instance, are you able to deploy the code at will, on-demand, with a good, blue-green deployment strategy? Or do you use a shadow deployment or rolling deployment strategy?

The major difference between continuous deployment and continuous delivery is that continuous delivery is related to the frequent churn of new features into production for the customer, which is valued at the business level by understanding what customer value is being realized. Continuous deployment is more related to DevOps functionality with respect to the tools and automation strategy around CI/CD best practices, particularly for governance and compliance."

Tracy Ragan, CEO and Co-founder, DeployHub

"These terms seem to be interchangeable, but they are not. Let's start at the top. Continuous delivery (CD) is a software lifecycle process. A CD workflow defines and automates ALL of the steps required to move code, starting at the change request and ending in the user's hands. There are many steps in between. Continuous Integration manages the first step dealing with version control and binary creation (software build). Continuous deployment is called at multiple states of the lifecycle process. It can be called to deploy binaries to developers, testers or production end-users.

So, continuous integration addresses the build, continuous deployment manages the move of those binaries to whoever needs them, and continuous delivery orchestrates the entire process like a job scheduler. Continuous integration, continuous delivery and continuous deployment are used to automate the toil of moving software changes through the lifecycle as quickly and safely as possible. We did not mention continuous testing, but that is also part of the continuous delivery process. It is called once continuous deployment has delivered new binaries. It can be done in all states, performing different kinds of tests (unit, system, smoke, etc.)."

Ryan Sheldrake, Field CTO - EMEA, Lacework

"Continuous integration: The merge to a branch or master/main on every code commit to ensure a full ‘build' can be performed based on the delta change e.g., what was committed.

Continuous delivery: The continuation of the above to a ‘repository' that all release candidates and/or tags could, in theory, be deployed globally or to a subset of the target production estate or system.

Continuous deployment: The continual flow from developers/engineers into production (or subsections of the production estate, e.g. green/blue/canary) due to a high confidence in automated testing that no longer required a CAB/gate or ‘change slot' to go live."

Continuous integration, continuous deployment and continuous delivery each play an important role in the software delivery lifecycle. As Tracy Ragan noted, the terms may seem interchangeable but they are not.

To learn more about CI/CD, join DevOps Institute for SKILup Day: CI/CD on April 21, 2022. Register here to save your seat.

Jayne Groll is CEO of DevOps Institute
Share this

Industry News

April 25, 2024

JFrog announced a new machine learning (ML) lifecycle integration between JFrog Artifactory and MLflow, an open source software platform originally developed by Databricks.

April 25, 2024

Copado announced the general availability of Test Copilot, the AI-powered test creation assistant.

April 25, 2024

SmartBear has added no-code test automation powered by GenAI to its Zephyr Scale, the solution that delivers scalable, performant test management inside Jira.

April 24, 2024

Opsera announced that two new patents have been issued for its Unified DevOps Platform, now totaling nine patents issued for the cloud-native DevOps Platform.

April 23, 2024

mabl announced the addition of mobile application testing to its platform.

April 23, 2024

Spectro Cloud announced the achievement of a new Amazon Web Services (AWS) Competency designation.

April 22, 2024

GitLab announced the general availability of GitLab Duo Chat.

April 18, 2024

SmartBear announced a new version of its API design and documentation tool, SwaggerHub, integrating Stoplight’s API open source tools.

April 18, 2024

Red Hat announced updates to Red Hat Trusted Software Supply Chain.

April 18, 2024

Tricentis announced the latest update to the company’s AI offerings with the launch of Tricentis Copilot, a suite of solutions leveraging generative AI to enhance productivity throughout the entire testing lifecycle.

April 17, 2024

CIQ launched fully supported, upstream stable kernels for Rocky Linux via the CIQ Enterprise Linux Platform, providing enhanced performance, hardware compatibility and security.

April 17, 2024

Redgate launched an enterprise version of its database monitoring tool, providing a range of new features to address the challenges of scale and complexity faced by larger organizations.

April 17, 2024

Snyk announced the expansion of its current partnership with Google Cloud to advance secure code generated by Google Cloud’s generative-AI-powered collaborator service, Gemini Code Assist.

April 16, 2024

Kong announced the commercial availability of Kong Konnect Dedicated Cloud Gateways on Amazon Web Services (AWS).

April 16, 2024

Pegasystems announced the general availability of Pega Infinity ’24.1™.