Distributed Release Management
Deploying etsy.com 40+ times per day
Engineering Director, Etsy
1st Day Assignment
Put your face on etsy.com/about
What I’m showing you tonight is the result
of four years of iteration.
Small incremental changes to the application
“Dark” features: new classes, methods, controllers
Graphics, stylesheets, templates
Turning flags on, off, or % ramp up
Latent bugs and security holes
Traffic management, load shedding
Adding and removing infrastructure
Tweaking config flags or releasing patches.
“Operating” the site
Entire app deploy took 15 minutes.
4 people running the deployment
Config deploy and Chef change deployed in parallel.
Optimal queue size
Historical record is ideal for post-mortems
Hold up the queue (.hold)
Work the issue with the people available in #push
Additional help always available in #sysops
Buddy-system for off-hours deploys
When something goes wrong?
25 Million Items listed
60+ Million Monthly unique visitors
200 Countries with annual transactions
175+ Committers, everyone deploys
Items by anjaysdesigns, betwixxt, OneStarLeatherGoods, mediumcontrol, TheDesignPallet