knife-spork •Work!ow to manage cookbook and environment changes •Versioned cookbooks and pinned environments •Speci"c work!ow, di#erent ways of using plugins Tuesday, September 10, 13
Downsides •Longer testing blocks others •Staged cookbooks can accidentally be promoted •Testing environment a#ects more than one cookbook •Used “upgrade” environments to circumvent Tuesday, September 10, 13
Branching in Code •Well established pattern for “dark launches” •Used in the Etsy Web stack •Allows for restricted roll outs •http://code.!ickr.net/2009/12/02/!ipping-out/ Tuesday, September 10, 13
Advantages •Easy to access list of what gets upgrades •Upgrades don’t need the spork work!ow •Pattern already known by all engineers Tuesday, September 10, 13
Summary •GitHub Enterprise, Dev VMs, chef-shell as development environment •Chef Server and knife-spork as Deployment System •Feature !agging with chef-whitelist •Monitoring, Noti"cations, Graphs Tuesday, September 10, 13
•http://codeascraft.etsy.com/ •http://codeascraft.com/2013/08/02/ infrastructure-upgrades-with-chef/ •http://www.slideshare.net/jonlives/michelin- starred-cooking-with-chef •http://www.slideshare.net/mcdonnps/lessons- from-etsy-avoiding-kitchen-nightmares- chefconf-2012 •https://github.com/etsy Further information Tuesday, September 10, 13