Back to glossary

Continuous Delivery

A software engineering practice where code changes are automatically built, tested, and prepared for production release, ensuring the codebase is always in a deployable state with releases requiring only a manual approval step.

Continuous delivery extends continuous integration by ensuring that every change that passes the automated pipeline is ready for production deployment. The distinction from continuous deployment is the final step: continuous delivery requires a human to press the deploy button, while continuous deployment releases automatically. Both keep the codebase in a perpetually releasable state.

Achieving continuous delivery requires investment in test automation (unit, integration, end-to-end), environment management (staging that mirrors production), deployment automation (one-click deploys), and monitoring (rapid detection of issues post-deploy). The pipeline must be fast enough to provide feedback within minutes, not hours.

For AI products, continuous delivery of model changes requires additional pipeline stages: model evaluation against benchmark datasets, performance regression tests (latency, throughput), output quality checks (hallucination rates, format compliance), cost estimation, and potentially human review of sample outputs. This ML-specific pipeline ensures that model updates meet the same quality bar as application code before reaching production.

Related Terms