Continuous Deployment is the practice of continuously pushing to production new versions of software under development.

Continuous Deployment

Continuous Deployment Overview

Continuous Deployment is the practice of continuously pushing to production new versions of software under development. In organizations like Facebook and Amazon, software is deployed thousands of times each day.

Continuous Deployment vs. Continuous Integration (CI) and Continuous Delivery

  • Continuous Integration is a software development practice in which you build and unit-test software every time a developer checks in new code.
  • Continuous Delivery (CD) is a software development practice in which continuous integration, automated testing, and automated deployment capabilities allow software to be developed and deployed rapidly, reliably and repeatedly with minimal manual overhead.
  • Continuous Deployment - Continuous Deployment is a software development practice in which every code change goes through the entire pipeline and is put into production, automatically, resulting in many production deployments every day.

 With Continuous Delivery your software is always release-ready, yet the timing of when to push it into production is a business decision, and so the final deployment is a manual step. With Continuous Deployment, any updated working version of the application is automatically pushed to production. Continuous Deployment mandates Continuous Delivery, but the opposite is not required.

Below we have compiled publicly available sources from around the world that present views on Continuous Deployment.

Overviews of Continuous Deployment and Benefits

L;;Detailed reference card on Continuous Delivery patterns and anti-patterns with sections on deployment automation and the deployment pipeline;;Paul Duvall;NA;;
L;Startup Lessons Learned;Why Continuous Deployment?;;Eric Ries;2009;;
L;Prezi;Slide Deck: Introducing the Continuous Deployment concept with background about testing monitoring tools and culture requirements;;Eishay Smith;2010;;

Continuous Deployment Best Practices

L;Technology Conversations;Continuous deployment strategies;;NA;2014;;
L;Snap CI;Continuous deployment strategies;;Ketan Padegaonkar;2015;;
L;AirPair;Continuous Deployment For Practical People;;Mike Mooney;2015;;

Relation Between Continuous Delivery and Continuous Deployment

L;Continuous Delivery Blog;Continuous Delivery vs. Continuous Deployment;;Jez Humble;2010;;
L;Martin Fowler;Continuous Delivery and its relation to continuous deployment - by co-author of the book Continuous Delivery;;Martin Fowler;2013;;
L;Puppet Labs;Continuous Delivery Vs. Continuous Deployment;;Carl Caum;2013;;
L;Sanjeev Sharma;Understanding DevOps - Continuous Deployment vs Continuous Delivery;;Sanjeev Sharma;2013;;

Continuous Deployment Case Studies

L;Technology Conversations;Sample implementation for continuous deployment with CoreOS Docker etcd nginx Confd and BDD Assistant Deployer;;NA;2014;;
L;Timothy Fitz;Continuous Deployment at IMVU: Doing the impossible fifty times a day;;Timothy Fitz;2009;;
L;Quora;What are the best examples of companies using continuous deployment ?;;NA;2014;;
L;SlideShare;Slide Deck: Continuous Deployment at Etsy: A Tale of Two Approaches;;Ross Snyder;2013;;
L;USA Digital Government;Continuous deployment instructions of USA Digital Government agency;;NA;NA;;

Continuous Deployment with Specific Tools and Environments

L;InCycle Software;Continuous deployment to Azure web sites with release management;;Harris Boyce;2015;;
L;CircleCI;Continuous deployment with CircleCI and Heroku;;NA;NA;;
L;CodeShip;Continuous deployment with CodeShip and Capistrano;;NA;NA;;
L;Mesosphere;Continous deployment with Mesos Marathon and Docker;;NA;NA;;

Vendors Offering Continuous Deployment Solutions

V;Electric Cloud;A single DevOps platform that supports the entire end-to-end software development and delivery process;;NA;NA;Electric Cloud;ElectricFlow Deploy
V;Appacito;Supports Continuous Deployment for two main use cases: Blue-green production servers and production traffic copied to test servers.;;NA;NA;Appcito;CAFE
V;Semaphore;Enables your team to roll-in revisions and gain feedback faster by automatically deploying a good version of your code to the desired server.;;NA;NA;Semaphore;NA
V;SpeedCurve;SpeedCurve's Continuous Deployment dashboard helps you keep the development of your site on track with continuous feedback on your performance pipeline.;;NA;NA;SpeedCurve;NA
V;JetBrains;Continuous Deployment with TeamCity - official solution page;;NA;NA;JetBrains;TeamCity
L;Microsoft Azure;Continuous delivery to Azure using Visual Studio Online;;Kemp Brown;2015;;
L;Assembla;Continuous Delivery vs Continuous Deployment vs Continuous Integration;;Michael Chletsos;2012;;
L;Sentry;Continuous Deployment with Freight;;David Cramer;2015;;
L;Atlassian;Practical continuous deployment;;Steve Smith;2014;;

Further Reading