techniques for stress free software releases

37
Techniques for STRESS-FREE SOFTWARE RELEASES Rouan Wilsenach @rouanw rouanw.github.io thoughtworks.com

Upload: rouanw

Post on 23-Jan-2017

392 views

Category:

Software


0 download

TRANSCRIPT

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 WRONGYour 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 HOWTechniques to help you sleep

12

THE GAUNTLETAutomated testing and a deployment pipeline

13

14

The test pyramid

http://martinfowler.com/bliki/TestPyramid.html

testing = checking + exploring !- Elisabeth Hendrickson

15http://testobsessed.com

16

Deployment pipeline

17

Package once

AUTOMATED !

DEPLOYMENTSOne click. Deployed.

18

When humans do repetitive tasks on behalf of computers, they all get together late at night and laugh !- Neal Ford

19nealford.com

20

One-click deployment

21

Production-like environments

22

Start with a list

INFRASTRUCTURE !

AS CODEIt’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 !

RELEASESZero-downtime releases.

30

31

32

33

34http://martinfowler.com/bliki/BlueGreenDeployment.html

DEVOPS CULTURESUGSA 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