The biggest trick
consultants ever pulled, was
convincing the world
continuous delivery is easy!
Paul Stack
http://twitter.com/stack72
mail: [email protected]
Slide 2
Slide 2 text
About Me
Infrastructure Engineer
Reformed ASP.NET / C# Developer
DevOps Extremist
Conference Junkie
Slide 3
Slide 3 text
Background to this talk
Slide 4
Slide 4 text
Continuous Delivery
…. is a set of practices and
principles aimed at, building,
testing and releasing software
faster and more frequently.
Slide 5
Slide 5 text
8 principles of Continuous
Delivery
The process for releasing/deploying software MUST be repeatable
and reliable.
Automate everything!
If somethings difficult or painful, do it more often.
Keep everything in source control
Done means “released”
Build quality in!
Everybody has responsibility for the release process
Improve continuously
Slide 6
Slide 6 text
4 Practices of Continuous
Delivery
Build binaries only once
Use precisely the same mechanism to deploy to every
environment
Smoke test your deployment
If anything fails, stop the line!
Slide 7
Slide 7 text
Has anyone read this book?
Slide 8
Slide 8 text
So continuous delivery is
only 5 years old??
Slide 9
Slide 9 text
Agile Manifesto
“Our highest priority is to satisfy the
customer through early and
continuous delivery of valuable
software"
Slide 10
Slide 10 text
Here we go…..
Slide 11
Slide 11 text
1. Continuous Delivery is
something only startups can
achieve
Slide 12
Slide 12 text
2. Continuous Delivery only
works for NodeJS / Ruby /
Go developers
Slide 13
Slide 13 text
3. We can hire a consultant
to help us implement
‘Continuous Delivery’
Slide 14
Slide 14 text
4. Right click and deploy in
your IDE is continuous
delivery
Slide 15
Slide 15 text
5. Continuous delivery is as
simple as hooking github to
our Azure / Heroku
account…..
Slide 16
Slide 16 text
No content
Slide 17
Slide 17 text
No content
Slide 18
Slide 18 text
6. Docker….
Slide 19
Slide 19 text
7. DevOps means that we
don’t need operations
teams…
Slide 20
Slide 20 text
8. Using chef / puppet /
ansible means i am doing
`DevOps`
Slide 21
Slide 21 text
9. We can hire a DevOps
team to create the jenkins
jobs and bash scripts for
deployment
Slide 22
Slide 22 text
10. “I'm going to rub a little
DevOps on that and make it
better"
Slide 23
Slide 23 text
“How long would it take your
organisation to deploy a change that
involved just one single line of code?
Do you do this on a repeatable, reliable
basis?”
Implementing Lean Software Development
Mary Poppendieck
Slide 24
Slide 24 text
Value Stream Map
Slide 25
Slide 25 text
“Until your pretty code is in
production, making money, or doing
whatever it does, you’ve just wasted
your time”
Chris Read
@cread
#LondonCI
Slide 26
Slide 26 text
To improve we need to
measure…
Slide 27
Slide 27 text
The rise of DevOps…..
Slide 28
Slide 28 text
No content
Slide 29
Slide 29 text
October 30 - 31, 2009
Ghent, Belgium
Developers + System Administrators
for 2 days
= DevOpsDays
Slide 30
Slide 30 text
No content
Slide 31
Slide 31 text
No content
Slide 32
Slide 32 text
No content
Slide 33
Slide 33 text
No content
Slide 34
Slide 34 text
So what actually is
DevOps?
Slide 35
Slide 35 text
“DevOps is not about learning each
other's job, it's understanding the
money is made when software is
actually running in production.”
Dave Mangot
@davemangot
Slide 36
Slide 36 text
‘The 3 ways’
• Systems thinking
• Amplify Feedback loops
• Culture of Continual
Experimentation and learning
We found that when we woke developers up at 2am,
defects got fixed faster!
-Patrick Lightbody
CEO, Browsermob
Slide 41
Slide 41 text
The third way…
Slide 42
Slide 42 text
No content
Slide 43
Slide 43 text
We are *all* part of the same
team!
Slide 44
Slide 44 text
Image by John Turner of PaddyPower.com
Slide 45
Slide 45 text
Configuration Management
Slide 46
Slide 46 text
Immutable Infrastructure
Slide 47
Slide 47 text
Immutable Infrastructure
Slide 48
Slide 48 text
Disposable Infrastructure
Slide 49
Slide 49 text
Logging
Slide 50
Slide 50 text
No content
Slide 51
Slide 51 text
Metrics
Slide 52
Slide 52 text
Monitoring
Slide 53
Slide 53 text
Orchestration
Slide 54
Slide 54 text
Data Center as Code?
Slide 55
Slide 55 text
Disaster Recovery?
Slide 56
Slide 56 text
No content
Slide 57
Slide 57 text
The Benefits of Continuous
Delivery & DevOps
• High Performing IT Teams are more
Agile!
• High Performing IT Teams can recover
faster!
• High Performing IT Teams can
experiment more!
https://puppetlabs.com/sites/default/files/2014-state-of-devops-report.pdf
Slide 58
Slide 58 text
Continuous Delivery means
better products for your
customers!*
* Customers can be internal or external