delivery with chef - chefconf 2015

30
DELIVERY WITH CHEF Seth Falcon GM, Delivery

Upload: chef

Post on 10-Aug-2015

34 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Delivery With Chef - ChefConf 2015

DELIVERY WITH CHEFSeth Falcon

GM, Delivery

Page 2: Delivery With Chef - ChefConf 2015

A CHEF SINCE 2010

Page 3: Delivery With Chef - ChefConf 2015

ERCHEF

CHEF SERVER ROLES ENDPOINT90TH PERCENTILE LATENCY

Page 4: Delivery With Chef - ChefConf 2015

Optimization New product development

DELIVERY

?

2014

Page 5: Delivery With Chef - ChefConf 2015

WORRY ABOUT BUILDING THE WRONG

THING

TALK TO CUSTOMERS

Page 6: Delivery With Chef - ChefConf 2015

WORRY ABOUT BUILDING THE WRONG

THING

TALK TO CUSTOMERS

THINGS WE DID NOT DO WHEN BUILDING

ERCHEF

Page 7: Delivery With Chef - ChefConf 2015

WORRY ABOUT BUILDING THE WRONG

THING

TALK TO CUSTOMERS

THINGS WE DID NOT DO WHEN BUILDING

ERCHEF

THING WE ARE DOING WHILE BUILDING

DELIVERY

Page 8: Delivery With Chef - ChefConf 2015

NEW PRODUCT DEVELOPMENT

Optimize for feedback and learning

Design to replace

Page 9: Delivery With Chef - ChefConf 2015

CHEF DELIVERY

Page 10: Delivery With Chef - ChefConf 2015

CHEF DELIVERY

Page 11: Delivery With Chef - ChefConf 2015

VALIDATED IN OUR ENGAGEMENTS WITHENTERPRISE AND BIG WEB CUSTOMERS.

WE'VE IDENTIFIED A STABLE WORKFLOW

Page 12: Delivery With Chef - ChefConf 2015

STABLE WORKFLOWSteps

Create a new change1

Test ChangeLocally2

Verification Tests

SubmitChange3

ReviewChange4

Build Artifacts

Acceptance Tests

ApproveChange5

Release Process

DeliverChange6

manual automated

Page 13: Delivery With Chef - ChefConf 2015

A SHARED PIPELINE

ACROSS PROJECTS AND TEAMS

Page 14: Delivery With Chef - ChefConf 2015

SHARED PIPELINEOne Pipeline

Delivery Pipeline

Acceptance PipelinesInfrastructure & Applications

Page 15: Delivery With Chef - ChefConf 2015

THE STAGES ARE FIXED

EACH STAGE HAS A FIXED SET OF PHASES

A UNIFIED PIPELINE SHAPE

Page 16: Delivery With Chef - ChefConf 2015

DELIVERY PIPELINESteps

manual automated

VerifyLint

Syntax

Unit

BuildMerge

Lint

Syntax

Unit

Quality

Security

Publish

Provision

Deploy

Smoke

Functional

Acceptance UnionProvision

Deploy

Smoke

Functional

RehearsalProvision

Deploy

Smoke

Functional

DeliveredProvision

Deploy

Smoke

Functional

Stages

customizable

Verify Build

Acceptance

Union

Rehearsal

Delivered

SubmitChange3

ReviewChange4

ApproveChange5

DeliverChange6

Chef Delivery

Create a new change1

Test ChangeLocally2

Workstation

Page 17: Delivery With Chef - ChefConf 2015

$ ssh my-node

OHAI!!!!$

motd simple-web

Page 18: Delivery With Chef - ChefConf 2015

Acceptance simple-web

Acceptance motd

Union Rehearsal Delivered

simple-web (motd)

simple-web (motd)

simple-web (motd)

simple-web (motd)

motd

Page 19: Delivery With Chef - ChefConf 2015

Acceptance simple-web

Acceptance motd

Union Rehearsal Delivered

simple-web (motd)

simple-web (motd)

simple-web (motd)

simple-web (motd)

motd

Page 20: Delivery With Chef - ChefConf 2015

OUR DEMO PLAN

1. Propose a change to motd

2. Review acceptance; then hit Deliver

3. See how Union is affected

4. Propose a change to simple-web, see that we get latest motd in acceptance

Page 21: Delivery With Chef - ChefConf 2015

DEMO TIMES

Page 22: Delivery With Chef - ChefConf 2015

DELIVERY BY PHONE?

Page 23: Delivery With Chef - ChefConf 2015

OUR JOURNEY

Page 24: Delivery With Chef - ChefConf 2015

SHIPPING FEATURESnot tasks

Page 25: Delivery With Chef - ChefConf 2015

SHIPPING FEATURESnot tasks

Page 26: Delivery With Chef - ChefConf 2015

BEING A

USER PAYS OFF

Page 27: Delivery With Chef - ChefConf 2015

THAT MOMENT WHENwe felt what it feels like

to be ready, flexible, and swift

Page 28: Delivery With Chef - ChefConf 2015

Adam Jacob Oliver Ferrigni

Alex Ethier Salim Afiune

Chrostopher Maier Scott Christopherson

Jean Rouge Seth Falcon

Jon Anderson Shelton Davis

Jon Morrow Tom Duffield

Mark Dennard Jon Morrow

TEAM

Page 29: Delivery With Chef - ChefConf 2015
Page 30: Delivery With Chef - ChefConf 2015

HOW IT WORKSCLI

WebBrowser

Job Dispatch

Push

Chef Server

erlang

Delivery

erlang

pgSQL

DB

git

SCM

Build NodeBuild NodeBuild Nodes