CI/CD in plain words
Continuous integration means every change is merged often and automatically built and tested, so problems show up within minutes. Continuous delivery keeps every passing build ready to release, with a person deciding when it goes to production. Continuous deployment goes one step further and releases every passing change automatically.
The problem CI/CD solves
In the old way, developers worked apart for weeks, then merged everything, found it did not fit, and fixed it in a rush. Releases were manual, rare and stressful. A pipeline replaces the manual steps with automation that runs the same way every time: fetch the code, build it, test it, package it and deploy it.
Three terms, three different promises
| Term | What happens automatically | Who decides about production |
|---|---|---|
| Continuous integration (CI) | Every push is merged often, built and tested | Not part of CI |
| Continuous delivery (CD) | CI, plus packaging and deploying to test environments, so any passing build could be released | A person approves the release |
| Continuous deployment (also CD) | Everything, all the way to production, when the checks pass | Nobody: the pipeline does |
Most enterprise and mainframe teams practise continuous integration and continuous delivery. Production releases still need an approval, and often a change record, but everything up to that point is automated.
Why it is worth the effort
- Fast feedback. A mistake is reported minutes after the push, while the change is still fresh in your mind.
- Repeatability. The pipeline does the same steps in the same order every time, so no step is forgotten under pressure.
- Smaller releases. Small, frequent changes are easier to test, easier to review and easier to roll back.
- A record. Every build, test result and deployment is logged, which auditors and incident reviews rely on.
Which practice builds and tests every change automatically as soon as it is pushed? Give the two-letter abbreviation.
Show a hint
Continuous ...
Show the solution
CI, continuous integration.
Common mistakes
Delivery keeps every build releasable with a person approving production. Deployment releases automatically. Teams mean very different things by them.
A pipeline that compiles but never tests only tells you the code compiles. The tests are what give you confidence.
CI only works if people integrate often. Long-lived branches bring back the big, painful merges CI is meant to remove.
What you will see at work
- Interviewers often ask for the difference between continuous delivery and continuous deployment. Use the table above.
- On mainframe teams the pipeline usually builds COBOL with IBM Dependency Based Build (DBB) and deploys with a tool, but the stages are the same.
- When a pipeline is red, fixing it comes before starting new work. Everyone's changes are blocked behind a broken build.
Key terms
Check your understanding.
Take this lesson's quiz and save your progress. Free.