You do continous integration – but every release is still a big THING. You fear it, you sit there and you hope it will work. In case you are in this situation, you are obviously behind the next development in our industry. A friend reommended a posting to me that I liked so much, I must put it here again:
So what should Alex do? Continuously deploy. Every commit should be instantly deployed to production. Let’s walk through her story again, assuming she had such an ideal implementation of Continuous Deployment.
Alex commits. Minutes later warnings go off that the cluster is no longer healthy. The failure is easily correlated to Alex’s change and her change is reverted. Alex spends minimal time debugging, finding the now obvious typo with ease. Her changes still caused a failure cascade, but the downtime was minimal. (found at T. Fitz Blog)
Continuous Deployment isn’t just an abstract theory. At IMVU it’s a core part of our culture to ship. It’s also not a new technique here, we’ve been practicing continuous deployment for years; far longer than I’ve been a member of this startup.
It’s important to note that system I’m about to explain evolved organically in response to new demands on the system and in response to post-mortems of failures. Nobody gets here overnight, but every step along the way has made us better developers. (Fitz)
So – teams who are not able to do this — you are too slow and not professional anymore.
Great test coverage is not enough. Continuous Deployment requires much more than that. Continuous Deployment means running all your tests, all the time.
Well, and there are teams who do not even do tests. And if you do not believe Tim:
The point is that Continuous Deployment is real. It works and it scales up to large clusters, large development teams and extremely agile environments.
My message to all Teams that are not doing Unit Testing, Automated Integration Testing, Continuous Integration and Deployment: “Start to work in this … hard, harder. Do more. If this is possible than you MUST do it also.
My message to Customers: When this is possible than demand it from your teams also.