We Can All Have Nice Things: Patterns for Brownfield Automation - July 13, 2016
Are you from a large and old IT organization? Do you support legacy applications that were lovingly built by hand in the distant past? Do you want to automate all of the things but feel its just not possible because you're faced with a mountain of technical debt? Or do you think automation is too hard because you simply cant rebuild your servers because you either don't know how or because no one will give you new servers? Do you want to have nice things? Its hard to know where to start a brownfield automation project and how to keep it going once its started. Adobe IT Web Platform Services had this problem and still has this problem. We used to build and deploy everything by hand. We had excessive configuration drift. We didn't exactly know how to rebuild our servers. We would fat finger deployments and cause service outages. We had 19 different environments, all different, and all updates were pushed out by hand. We have a lot of technical debt. Were better because we've tried to automate. Were not yet completely automated. We don't do CI or CD. We don't even do automated tests. But were using Chef and our lives are better because of it. We've eliminated configuration drift. We've made rollout and rollback easier. And yes, we have nice things.