The Ruby community has driven a lot of technical innovation in deployment and configuration management over the last few years, and so the idea of delivering high-quality software rapidly should be familiar to most of us. But although our tools are state-of-the-art, getting them to work together properly can be surprisingly frustrating. In this talk, I'll explain how to implement a high-quality rapid build and deploy process using standard CI tools, Bundler, RVM, and Capistrano. I'll also discuss how to coach your developers, QAs, and client to be "production-ready, any time."
72. “...an automated manifestation of your process for
getting software from version control into the
hands of your users.”
- Jez Humble and David Farley, Continuous Delivery
73. Unit and Automated Manual
Integration Acceptance Acceptance Production
(Woohoo!)
Tests Tests Tests
74. Test Test Test
runner runner runner
Test
runner
Unit and Automated Manual
Integration Acceptance Acceptance Production
(Woohoo!)
Tests Tests Tests
75. “I see CI as primarily giving birth to a release
candidate at each commit. The job of the CI
system and deployment process is to disprove
the production-readiness of a release candidate.
This model relies on the need to have some
mainline that represents the current shared, most
up to date picture of complete.”
- David Farley