Te c h n i q u e s f o r
STRESS-FREE SOFTWARE
RELEASES
Rouan Wilsenach
@rouanw
rouanw.github.io
thoughtworks.com
2
SIGNS YOU’RE
!
DOING IT WRONG
Your releases are more stressful than they should be
3
4
Stressed out?
https://www.flickr.com/photos/giuseppesavo/6153578409
5https://www.flickr.com/photos/dingopup/3800498100
After hours
6
Manual steps
https://www.flickr.com/photos/clement127/15943249419
7https://www.flickr.com/photos/jdhancock/5827228535
The deployment guy
8
Hope it works…
https://www.flickr.com/photos/daniel_gies/5052886953
9https://www.flickr.com/photos/sweetone/3232998358
Users are impacted
10https://www.flickr.com/photos/cgranycome/14007087703
Infrequent
11https://www.flickr.com/photos/tambako/6143645724
Releases should be a non-event
HERE’S HOW
Techniques to help you sleep
12
THE GAUNTLET
Automated testing and a deployment pipeline
13
14
The test pyramid
http://martinfowler.com/bliki/TestPyramid.html
testing = checking + exploring
!
- Elisabeth Hendrickson
15
http://testobsessed.com
16
Deployment pipeline
17
Package once
AUTOMATED
!
DEPLOYMENTS
One click. Deployed.
18
When humans do repetitive tasks on
behalf of computers, they all get together
late at night and laugh
!
- Neal Ford
19
nealford.com
20
One-click deployment
21
Production-like environments
22
Start with a list
INFRASTRUCTURE
!
AS CODE
It’s like baking a cake, only you’re baking a server
23
24
Automate a home for your app
25
!
Treat your servers like cattle, not pets
I too consider myself an artist and a
craftsman of server building. With each
click of a mouse, I create a work of art.
!
- Disenfranchised systems administrator
26
http://tatiyants.com/devops-is-ruining-my-craft/
27
Intentionality Time to recovery
28
29
Phoenix servers
BLUE - GREEN
!
RELEASES
Zero-downtime releases.
30
31
32
33
34http://martinfowler.com/bliki/BlueGreenDeployment.html
DEVOPS CULTURE
SUGSA Jo’burg - November 11
http://martinfowler.com/bliki/DevOpsCulture.html
35
36https://www.flickr.com/photos/tambako/6143645724
Automated tests &
deployment pipeline
Automate deployment
Infrastructure as code
Blue-green releases
Te c h n i q u e s f o r
STRESS-FREE SOFTWARE
RELEASES
Rouan Wilsenach
@rouanw
rouanw.github.io
thoughtworks.com

Techniques for stress free software releases