alldaydevops: crossing the cd chasm

68
J. Paul Reed Managing Partner Release Engineering Approaches Crossing the CD Chasm November 15, 2016

Upload: j-paul-reed

Post on 09-Jan-2017

70 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: AllDayDevOps: Crossing the CD Chasm

J. Paul Reed Managing Partner • Release Engineering Approaches

Crossing the CD Chasm

November  15,  2016

Page 2: AllDayDevOps: Crossing the CD Chasm

J. Paul Reed•@jpaulreed on •@shipshowpodcast alum•Fifteen years as a build/release engineer•Now a “DevOps consultant™”•Master’s candidate in Human Factors & Systems Safety

@jpaulreed @AllDayDevOps

Page 3: AllDayDevOps: Crossing the CD Chasm

Let’s Start with a Survey...

@jpaulreed @AllDayDevOps

Page 4: AllDayDevOps: Crossing the CD Chasm

Continuous Delivery

@jpaulreed @AllDayDevOps

Page 5: AllDayDevOps: Crossing the CD Chasm

Continuous DeliveryDeployment

@jpaulreed @AllDayDevOps

Page 6: AllDayDevOps: Crossing the CD Chasm

Continuous DeliveryDeploymentDerpliveryment

@jpaulreed @AllDayDevOps

Page 7: AllDayDevOps: Crossing the CD Chasm

Continuous Delivery Means Minimizing Lead Time From Idea To Production And Then Feeding Back To Idea Again. R o l f A n d re w R u s s e l l , T h o u g h t w o r k s

@jpaulreed @AllDayDevOps

Page 8: AllDayDevOps: Crossing the CD Chasm

Continuous Delivery Is A Set Of Principles And Practices To Reduce The Cost, Time, And Risk Of Delivering Incremental Changes To Users.J e z H u m b l e

@jpaulreed @AllDayDevOps

Page 9: AllDayDevOps: Crossing the CD Chasm

Continuous Delivery Is Your Organization—Your Entire Organization—Caring About Release Engineering And Quality Assurance In A Way It Has Never Cared About Them Ever Before.M e

@jpaulreed @AllDayDevOps

Page 10: AllDayDevOps: Crossing the CD Chasm

How Would

You Get

Across?

@jpaulreed @AllDayDevOps

Page 11: AllDayDevOps: Crossing the CD Chasm

A Couple Possibilities

@jpaulreed @AllDayDevOps

Page 12: AllDayDevOps: Crossing the CD Chasm

A Couple Possibilities

@jpaulreed @AllDayDevOps

Page 13: AllDayDevOps: Crossing the CD Chasm

A Couple Possibilities

@jpaulreed @AllDayDevOps

Page 14: AllDayDevOps: Crossing the CD Chasm

Let’s Build a Bridge!

@jpaulreed @AllDayDevOps

Page 15: AllDayDevOps: Crossing the CD Chasm

Let’s Build a Bridge!

@jpaulreed @AllDayDevOps

Page 16: AllDayDevOps: Crossing the CD Chasm

Let’s Build a Bridge!

@jpaulreed @AllDayDevOps

Page 17: AllDayDevOps: Crossing the CD Chasm

Let’s Build a Bridge!

@jpaulreed @AllDayDevOps

Page 18: AllDayDevOps: Crossing the CD Chasm

Let’s Build a Bridge!

@jpaulreed @AllDayDevOps

Page 19: AllDayDevOps: Crossing the CD Chasm

Let’s Build a Bridge!

@jpaulreed @AllDayDevOps

Page 20: AllDayDevOps: Crossing the CD Chasm

A Better Idea?

@jpaulreed @AllDayDevOps

Page 21: AllDayDevOps: Crossing the CD Chasm

P R E P P I N G F O R T H E H I K E

Crossing the Chasm

O N T H E T R A I L

C A M P F I R E S T O R I E S

@jpaulreed @AllDayDevOps

Page 22: AllDayDevOps: Crossing the CD Chasm

Prepping for the Hike

@jpaulreed @AllDayDevOps

Page 23: AllDayDevOps: Crossing the CD Chasm

The Right People

@jpaulreed @AllDayDevOps

Page 24: AllDayDevOps: Crossing the CD Chasm

The Right People

Developers • QA • Release Engineers • The “Business”@jpaulreed @AllDayDevOps

Page 25: AllDayDevOps: Crossing the CD Chasm

The Right Tools

@jpaulreed @AllDayDevOps

Page 26: AllDayDevOps: Crossing the CD Chasm

Continuous...

@jpaulreed @AllDayDevOps

Page 27: AllDayDevOps: Crossing the CD Chasm

Continuous... Integration?

@jpaulreed @AllDayDevOps

Page 28: AllDayDevOps: Crossing the CD Chasm

Another Survey

@jpaulreed @AllDayDevOps

Page 29: AllDayDevOps: Crossing the CD Chasm

Another Survey

@jpaulreed @AllDayDevOps

Page 30: AllDayDevOps: Crossing the CD Chasm

P R E P P I N G F O R T H E H I K E

Jez’s CI Gauntlet• Put your hands up if you do continuous integration• Put your hand down if all of the developers on your team don’t check into trunk/master at least once a day

• Put your hand down unless every check-in triggers build...

• ... followed by unit tests...• ... for the complete product• Put your hands down if broken builds are not fixed within 10 minutes

@jpaulreed @AllDayDevOps

Page 31: AllDayDevOps: Crossing the CD Chasm

P R E P P I N G F O R T H E H I K E

Often Forgotten in CI Land•Configuration management•Backups•Connection to source code repositories•Access control

@jpaulreed @AllDayDevOps

Page 32: AllDayDevOps: Crossing the CD Chasm

P R E P P I N G F O R T H E H I K E

Telling Indicators•Possible to switch continuous integration software?• “Show me your CI slaves”•NTP (my favorite!)

@jpaulreed @AllDayDevOps

Page 33: AllDayDevOps: Crossing the CD Chasm

What Happens When...

@jpaulreed @AllDayDevOps

Page 34: AllDayDevOps: Crossing the CD Chasm

Integrating Streams of Change

@jpaulreed @AllDayDevOps

Page 35: AllDayDevOps: Crossing the CD Chasm

On The Trail

@jpaulreed @AllDayDevOps

Page 36: AllDayDevOps: Crossing the CD Chasm

Getting Started

A Great Catalyst. . . To Avoid

@jpaulreed @AllDayDevOps

Page 37: AllDayDevOps: Crossing the CD Chasm

Rethinking Fundamentals

@jpaulreed @AllDayDevOps

Page 38: AllDayDevOps: Crossing the CD Chasm

Rethinking Fundamentals

@jpaulreed @AllDayDevOps

Page 39: AllDayDevOps: Crossing the CD Chasm

Rethinking Fundamentals

@jpaulreed @AllDayDevOps

Page 40: AllDayDevOps: Crossing the CD Chasm

Questions on Quality

@jpaulreed @AllDayDevOps

Page 41: AllDayDevOps: Crossing the CD Chasm

O N T H E T R A I L

Continuous Quality•Start with The ComponentTM

• Laser-focus on defect testing

• Integration/systems testing

•Fuzz testing

@jpaulreed @AllDayDevOps

Page 42: AllDayDevOps: Crossing the CD Chasm

On Silos

@jpaulreed @AllDayDevOps

Page 43: AllDayDevOps: Crossing the CD Chasm

On Silos

@jpaulreed @AllDayDevOps

Page 44: AllDayDevOps: Crossing the CD Chasm

Flow Down the Mountain

@jpaulreed @AllDayDevOps

Page 45: AllDayDevOps: Crossing the CD Chasm

Campfire Stories

@jpaulreed @AllDayDevOps

Page 46: AllDayDevOps: Crossing the CD Chasm

Continuous Delivery

= Ship Every Single

Commit@jpaulreed @AllDayDevOps

Page 47: AllDayDevOps: Crossing the CD Chasm

@jpaulreed @AllDayDevOps

Page 48: AllDayDevOps: Crossing the CD Chasm

Continuous Delivery

requires Git

@jpaulreed @AllDayDevOps

Page 49: AllDayDevOps: Crossing the CD Chasm

Continuous Delivery is

only for web applications

@jpaulreed @AllDayDevOps

Page 50: AllDayDevOps: Crossing the CD Chasm

Printers?

@jpaulreed @AllDayDevOps

Page 51: AllDayDevOps: Crossing the CD Chasm

Core Internet Infrastructure?

@jpaulreed @AllDayDevOps

Page 52: AllDayDevOps: Crossing the CD Chasm

"What's Important About Continuous Delivery: It's Not About How Fast You Can Turn The Crank, It's The Confidence With Which You Can [Turn That Crank].D a m o n E d w a rd s , E p i s o d e 1 5 , T h e S h i p S h o w

@jpaulreed @AllDayDevOps

Page 53: AllDayDevOps: Crossing the CD Chasm

Serious Infrastructure

@jpaulreed @AllDayDevOps

Page 54: AllDayDevOps: Crossing the CD Chasm

You can implement Continuous

Delivery using the same QA/RelEng

strategies as always

@jpaulreed @AllDayDevOps

Page 55: AllDayDevOps: Crossing the CD Chasm

@jpaulreed @AllDayDevOps

Page 56: AllDayDevOps: Crossing the CD Chasm

You can implement Continuous Delivery

by yourself. Or without focused

investment.@jpaulreed @AllDayDevOps

Page 57: AllDayDevOps: Crossing the CD Chasm

Hiking Alone is Dangerous

@jpaulreed @AllDayDevOps

Page 58: AllDayDevOps: Crossing the CD Chasm

You can implement Continuous Delivery without an increase

in transparency

@jpaulreed @AllDayDevOps

Page 59: AllDayDevOps: Crossing the CD Chasm

“My Part Is Automated!”

@jpaulreed @AllDayDevOps

Page 60: AllDayDevOps: Crossing the CD Chasm

“My Part Is Automated!”

@jpaulreed @AllDayDevOps

Page 61: AllDayDevOps: Crossing the CD Chasm

Flow = Visibility

@jpaulreed @AllDayDevOps

Page 62: AllDayDevOps: Crossing the CD Chasm

Hiking the Chasm

@jpaulreed @AllDayDevOps

Page 63: AllDayDevOps: Crossing the CD Chasm

Won’t Be Easy...

@jpaulreed @AllDayDevOps

Page 64: AllDayDevOps: Crossing the CD Chasm

But Worth It

@jpaulreed @AllDayDevOps

Page 65: AllDayDevOps: Crossing the CD Chasm

J. Paul Reed Managing Partner • Release Engineering Approaches

Thanks!@jpaulreed @AllDayDevOps

Page 66: AllDayDevOps: Crossing the CD Chasm

Hikes Through Other Canyons

jpaulreed.com/devops-in-practice

jpaulreed.com/continuous-delivery-skeptics

@jpaulreed @AllDayDevOps

Page 67: AllDayDevOps: Crossing the CD Chasm

November  15,  2016

Page 68: AllDayDevOps: Crossing the CD Chasm

November  15,  2016