What is Continuous Delivery
Continuous delivery (CD) is a software engineering methodology that applies automation technology and principles from lean manufacturing theory to the software delivery lifecycle to help organizations deliver better software faster. CD is a critical step on the path to DevOps.
1. Continuous delivery automates each stage of the application lifecycle from code check-in to production deployment.
2. Continuous delivery complements agile development’s focus on small, low-risk software feature releases.
3. Continuous delivery incorporates continuous integration (CI) which automates the application build and test processes.
4. Continuous delivery builds on continuous integration with automatic deployment between development, test, stage and production environments.
5. Continuous delivery can automate the definition and delivery of infrastructure environments.
6. Continuous delivery defines pipelines that application code flows through from development to production.
7. Continuous delivery requires an enterprise-grade automation platform to orchestrate everything.
Why Continuous Delivery?
- Applications and software power everything.
- IT organizations need to accelerate software delivery.
- Continuous delivery helps by applying automation to the software delivery process.
Orbitz transformed their technology organization into a learning organization, on the path to a continuous delivery and DevOps culture. They implemented open source Jenkins and the CloudBees Jenkins Platform to automate tests, ensure reliable builds and increase build consistency across the organization.
As a result of their efforts:
- Release cycles were reduced more than 75%
- Teams are now focused on high-value tasks
- Changes increased from tens of thousands/year to hundreds of thousands/year