If you are not doing automated testing, you are NOT ready for continuous delivery
CI as we know is closely knit to Continuous Delivery!Continuous Integration (CI) is a development practice that requires developers to integrate code into a shared repository several times a day. Each check-in is then verified by an automated build, allowing teams to detect problems early.
It is actually a series of practices that make you ready for continuous delivery. What you need is a quick way of seeing what happened after your new code is deployed.
You need the following:
- Staging environment (clone of prod) before the code hits production release.
- Automated tests that kick off as soon as the code is committed
- Some form of Iterative development - Agile
- A single source repository
- Every commit built on an integration machine
- Fast build
Visualizations of Continuous Delivery
Nhan Ngo, a QA engineer at Spotify, made four fabulous visualizations while reading Continuous Delivery. She has very kindly agreed to make them available under a Creative Commons license so feel free to share them, download them, and print them out (click to get a higher resolution version). Thank you Nhan!