2.0 KiB
2.0 KiB
Continuous Deployment
Definition
Continuous Deployment (CD) is a DevOps practice where code changes that pass all automated tests are automatically deployed to production environments without manual intervention.
Key Characteristics
Across DevOps Maturity Levels
| Maturity | CD Practice Level |
|---|---|
| Phase 1 | Manual deployments, milestone-based releases, no automation |
| Phase 2 | Automation used to reduce release risks, but still requires manual triggers |
| Phase 3 | Automated infrastructure provisioning, more frequent deployments possible |
| Phase 4 | Continuous integration pipeline enables tangible business benefits; infrastructure and code managed through pipelines |
| Phase 5 | Multiple deployments per day with high certainty and minimal risk; zero human intervention for code changes passing through the pipeline |
Core CD Elements
- Automated deployment pipelines
- Zero human intervention after code commit
- High confidence in automation quality
- Fast rollback capabilities
- Progressive delivery strategies (canary, blue-green)
- Real-time monitoring post-deployment
Relationship with Continuous Integration
CD builds on CI. The full CI/CD pipeline:
- CI — Every code change triggers automated builds and tests
- CD — Changes passing CI are automatically deployed
At Phase 5 maturity, the CI/CD pipeline achieves continuous deployment where code flows from commit to production automatically.
Business Impact
- Faster time-to-market
- Reduced release risk through smaller, incremental changes
- Rapid feedback from production users
- Higher team productivity
- Competitive advantage through rapid iteration
Sources
- sources/devops-maturity-model-from-traditional-it-to-advanced-devops.md
- sources/cloud-devop-maturity-guideline.md