A deployment pipeline is a production system
Treating CI/CD reliability, observability, and recovery with the seriousness it deserves.
When the deployment pipeline fails, production may remain online, but the company loses the ability to change it safely. That makes the pipeline part of the production system, whether the org chart admits it or not.
Delivery has users and SLOs
Developers depend on build, test, artifact, environment, identity, and deployment services. A failure in any one can block every product team at once. Yet many organizations operate this path with weaker ownership than a low-traffic API.
Define the critical journey: a valid change reaches production within an expected time, with status visible and rollback available. Measure success rate and latency from the developer point of view, not the uptime of individual pipeline components.
- Queue time before work starts
- Successful run rate excluding product test failures
- Time to identify platform-caused failure
- Time to restore the delivery path
Flakiness is an outage tax
A flaky pipeline teaches engineers to rerun instead of investigate. That masks real failures, consumes capacity, and destroys trust in every red signal. The tax compounds because each workaround makes the system harder to reason about.
Track reruns. Quarantine known flaky tests with owners and expiration dates. Separate product failures from delivery-platform failures so the team responsible can act without a handoff chain.
Recovery must be designed
Version the pipeline, runners, base images, policies, and deployment controllers. Test changes against representative repositories. Roll out progressively. Keep a known path for reverting the delivery system itself.
If the only recovery is to ask the engineer who built it six months ago, the pipeline is not automated. It is merely unattended.
A green product dashboard cannot compensate for a delivery system the company is afraid to change.
Field checklist
Take this into the next review.
- 01Define the developer-facing delivery SLO.
- 02Separate product and platform failures.
- 03Measure retries and queue time.
- 04Canary changes to shared pipeline components.
- 05Practice restoring the delivery path.
Useful? Send it to the person carrying the pager.
Share by email