Getting Edgy: What is CI/CD/CD?

Kate Packard
Ambassador Labs
Published in
2 min readFeb 16, 2021

--

Welcome to Getting Edgy! Today we’re going to talk about CI/CD/CD pipelines.

What is a CI/CD/CD pipeline?

Typically we refer to this concept as a CI/CD pipeline, but today we’re going to talk about continuous delivery and continuous deployment.

As you’re developing code, you’ll submit it into a source control system (think: GitHub or GitLab).From source control the code is pushed into continuous integration where the code is integrated with the code base for your current environment. Once it’s been integrated, you would use continuous delivery to package up the code and prepare it to be pushed to production. From there, you would use continuous deployment to fully automate the deployment of your application.

What is continuous integration (CI)?

Continuous integration is commonly referred to as the inner dev loop. This is when developers are writing code, submitting it into their source control system, testing it against the rest of their code base, and then iterating on it if it needs to be improved. That process of writing code, submitting code, testing code, and then writing again is the inner dev loop.

What is continuous delivery (CD)?

You can think of continuous delivery as an extension of the CI features where code is constantly being submitted and then built to be tested for the development environment, except that you’re now building the code to be ready for the production environment. Continuous delivery requires a manual step before this code actually reaches production systems, though. Typically you can use something like a canary release system or feature flag to be that last layer of protection for your production systems.

What is continuous deployment (CD)?

Continuous deployment is when you take the ideas from continuous delivery and turn it into a fully automated system. Because you have a fully automated process from submitting your code to the code being seen by your customers, there will be a rigorous set of automated tests. A fully automated pipeline allows developers to get code in front of customers much sooner so they can collect metrics and feedback faster, allowing them to speed up their feedback loops and write more code.

Thanks for tuning in to Getting Edgy! For more episodes, check out our YouTube channel.

--

--