Are you still doing deployments at 3:00am? If you are, you should have taken a look at Brian Crescimanno's post: "Why are you still deploying overnight?"
Whatever you call the process of turning your development codebase into a live, production application, I sincerely hope you’re not living in the Stone Age and doing it in the middle of the night under the guise of avoiding customer impact. Unfortunately, if my past experiences, and the experiences of many I’ve spoken to, are the norm, you very likely are. If your strategy to avoid customer interruption is based solely on trying to avoid your customers, you’re setting yourself up for even more headaches and long-term failure. --Brian Crescimanno
Brian asserts that if you're doing these overnight deployments to avoid your customers during the initial release, then it's probably indicates that one or more things are broken in your process. Here were the problems he listed with overnight deploys:
- Problem 1: You presume there will be problems that impact availability.
- Problem 2: You’ve got a complicated process and you’re sending over-tired, over-worked people to deal with it.
- Problem 3: You have no means of doing a phased rollout or a quick rollback.
So the moral of the story, if you buy in to his assessment, is that you should be getting some sleep at night instead of deploying.
Source - http://briancrescimanno.com/2011/09/29/why-are-you-still-deploying-overnight/
Image Source - http://www.flickr.com/photos/zenera/28726053/