Since some time ago I have been reading some theory and thoughs about continuous deployment (C.D.). Continuous deployment is an Agile technique where all the code written for the application is inmediately deployed into production .
Instead of writing my personal opinion about continuous deployment (I’m just a newbie in this field), I am going to give you some links where you can find opinions and examples from real experts.
First of all, some basic theory about continuous deployment.:
- Continuous deployment in 5 easy steps. The best introduction a Google search can pay for. A must read.
- Continous integration. Continuous deployment is part of the continuous integration proccess. CI allows you to polish your software and get a better quality.
- Continuous deployment by Eishay Smith on Prezi. Very cool slides about CD.
- Prerequisites for Continous Deployment. Some thoughts about what is needing in a continous deployment process.
Some interesting examples:
- How Jira deals with continuous integration. Explains the enviroment Jira uses from continuous deployment.
- Continous deployment problems you can face and how to resolve them. Some simple advices to avoid common problems in contiuous. It also introduces a really interesting unknown (for me) software pattern so called Fail-fast.
- Continuous Deployment at IMVU: Doing the impossible fifty times a day. A awesome real use of continuous deployment.
- Continuous integration step-by-step. Based on continuous deployment in 5 easy steps.
- Continuous deployment at outbrain. A massive and very detailed example of continuous deployment.
- Chrome Release Cycle. It is introducted by the previous link. Give a try!.
- Quantum of Deployment. A helpful tool for continuous deployment.
- How heyo deploys software. Another example of continuos deployment.
- A continuous deployment example setup. A very easy example.
Continuous Integration: Improving Software Quality and Reducing Risk.
For any software developer who has spent days in “integration hell,” cobbling together myriad software components, Continuous Integration: Improving Software Quality and Reducing Risk illustrates how to transform integration from a necessary evil into an everyday part of the development process. The key, as the authors show, is to integrate regularly and often using continuous integration (CI) practices and techniques…
Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation.
Getting software released to users is often a painful, risky, and time-consuming process. This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours sometimes even minutes–no matter what the size of a project or the complexity of its code base…
If I have enough time I will try to read them and write a small review. Until them I leave you a link to a review of the second one.