Continuous Deployment
We started iFacturas with 4 week scrums, ie. deployments. After half a year we changed to 2 weeks and now we try to do it weekly. The increased number of deployments makes it almost a dayli event, instead of a big risky project everybody fears. So the story below with up to 25 deployments dayli is certainly worth contemplating...
A post from A VC by Fred has the whole story. Here is a part:
A post from A VC by Fred has the whole story. Here is a part:
Last winter John Allspaw joined Etsy to run tech ops. John has written several important books on web ops and is one of the experts in operating large scale web services. One of the first things John did when he arrived at Etsy is work with the dev and ops teams to put in place a continuous deployment system.
Continuous deployment is the idea that you push out changes to your code base all the time instead of doing large builds and pushing out big chunks of code. Here's an Eric Ries post on continuous deployment if you want to get a longer description of what it is and how it works.
At Etsy, they push out code about 25 times per day. It has worked out very well for Etsy and has led to faster cycles, improved morale, and a more stable and reliable web service. We were talking about all of this during the board meeting yesterday and Chad Dickerson, Etsy's CTO, invited me to push out some code after the board meeting.
I sat at Chad's computer, we pulled up the queue of code that had been reviewed and approved and was ready to push, I selected the code I was going to push out, I hit the "deploy" button, and then we watched as the code was pushed out into the production system. Then we watched all the key metrics to make sure I hadn't broken the service with my push. I pushed some small changes to the checkout system. We watched to see that checkouts continued to get processed. We looked at all the charts and graphs. Everything seemed fine. And we were done.