Designing Continuous Delivery Into Your Platform John Simone - - - PowerPoint PPT Presentation

designing continuous delivery into your platform
SMART_READER_LITE
LIVE PREVIEW

Designing Continuous Delivery Into Your Platform John Simone - - - PowerPoint PPT Presentation

Designing Continuous Delivery Into Your Platform John Simone - Heroku @j_simone Friday, November 1, 13 Continuous Delivery Who haz it? Friday, November 1, 13 The Easy Bits Friday, November 1, 13 The Easy Bits Version your code Friday,


slide-1
SLIDE 1

Designing Continuous Delivery Into Your Platform

John Simone - Heroku @j_simone

Friday, November 1, 13

slide-2
SLIDE 2

Continuous Delivery

Who haz it?

Friday, November 1, 13

slide-3
SLIDE 3

The Easy Bits

Friday, November 1, 13

slide-4
SLIDE 4

The Easy Bits

Version your code

Friday, November 1, 13

slide-5
SLIDE 5

The Easy Bits

Version your code Control your deployments

Friday, November 1, 13

slide-6
SLIDE 6

The Easy Bits

Version your code Control your deployments Deploy behind feature flags

Friday, November 1, 13

slide-7
SLIDE 7

The Easy Bits

Version your code Control your deployments Deploy behind feature flags Favor slow rollouts

Friday, November 1, 13

slide-8
SLIDE 8

The Tricky Parts

Friday, November 1, 13

slide-9
SLIDE 9

The Tricky Parts

Version your configuration

Friday, November 1, 13

slide-10
SLIDE 10

The Tricky Parts

Version your configuration Planning your database migration

Friday, November 1, 13

slide-11
SLIDE 11

The Tricky Parts

Version your configuration Planning your database migration Having the ability to rollback

Friday, November 1, 13

slide-12
SLIDE 12

The Tricky Parts

Version your configuration Planning your database migration Having the ability to rollback Canary deployments

Friday, November 1, 13

slide-13
SLIDE 13

Well... Damn

Friday, November 1, 13

slide-14
SLIDE 14

Well... Damn

Version your environment Stateless and disposable app containers No snowflake servers

Friday, November 1, 13

slide-15
SLIDE 15

There is no magic bullet

Friday, November 1, 13

slide-16
SLIDE 16

Just a new perspective: Build it into your development platform

Friday, November 1, 13

slide-17
SLIDE 17

What is a development platform?

Friday, November 1, 13

slide-18
SLIDE 18

What is a development platform?

How your code gets integrated and deployed

Friday, November 1, 13

slide-19
SLIDE 19

What is a development platform?

How your code gets integrated and deployed How your environments are managed

Friday, November 1, 13

slide-20
SLIDE 20

What is a development platform?

How your code gets integrated and deployed How your environments are managed The container your code runs in

Friday, November 1, 13

slide-21
SLIDE 21

What is a development platform?

How your code gets integrated and deployed How your environments are managed The container your code runs in Your operational data pipeline

Friday, November 1, 13

slide-22
SLIDE 22

What is a development platform?

How your code gets integrated and deployed How your environments are managed The container your code runs in Your operational data pipeline

Friday, November 1, 13

slide-23
SLIDE 23

What is a development platform?

How your code gets integrated and deployed How your environments are managed The container your code runs in Your operational data pipeline It’s not new: you already have one

Friday, November 1, 13

slide-24
SLIDE 24

Application Versioning

Friday, November 1, 13

slide-25
SLIDE 25

Application Versioning

Ability to ensure deployments only happen via CI

Friday, November 1, 13

slide-26
SLIDE 26

Application Versioning

Ability to ensure deployments only happen via CI 100% repeatable deployments

Friday, November 1, 13

slide-27
SLIDE 27

Application Versioning

Ability to ensure deployments only happen via CI 100% repeatable deployments Method of rollback built in

Friday, November 1, 13

slide-28
SLIDE 28

Environment

Friday, November 1, 13

slide-29
SLIDE 29

Environment

Disposable containers for code execution

Friday, November 1, 13

slide-30
SLIDE 30

Environment

Disposable containers for code execution Recreate them on deployment/restart

Friday, November 1, 13

slide-31
SLIDE 31

Environment

Disposable containers for code execution Recreate them on deployment/restart Origin state only, everything else is ephemeral

Friday, November 1, 13

slide-32
SLIDE 32

Environment

Disposable containers for code execution Recreate them on deployment/restart Origin state only, everything else is ephemeral Destroy them often

Friday, November 1, 13

slide-33
SLIDE 33

Configuration

Friday, November 1, 13

slide-34
SLIDE 34

Configuration

Mechanism for versioning

Friday, November 1, 13

slide-35
SLIDE 35

Configuration

Mechanism for versioning Built into the container and immutable

Friday, November 1, 13

slide-36
SLIDE 36

Configuration

Mechanism for versioning Built into the container and immutable Changing it means a deployment

Friday, November 1, 13

slide-37
SLIDE 37

Configuration

Mechanism for versioning Built into the container and immutable Changing it means a deployment Feature flagging is at the application layer

Friday, November 1, 13

slide-38
SLIDE 38

Putting it together

Friday, November 1, 13

slide-39
SLIDE 39

Putting it together

Visibility of changes

Friday, November 1, 13

slide-40
SLIDE 40

Putting it together

Visibility of changes Visibility of the current state

Friday, November 1, 13

slide-41
SLIDE 41

Putting it together

Visibility of changes Visibility of the current state Deal with applications not infrastructure

Friday, November 1, 13

slide-42
SLIDE 42

Shameless Recruiting Plug

Friday, November 1, 13

slide-43
SLIDE 43

Shameless Recruiting Plug

Heroku is hiring: all manner of engineers product managers technical account managers jobs.heroku.com salesforce.com/dreamjob

Friday, November 1, 13

slide-44
SLIDE 44

Questions?

Friday, November 1, 13

slide-45
SLIDE 45

Questions?

John Simone

Friday, November 1, 13

slide-46
SLIDE 46

Questions?

John Simone Build & Packaging team - Heroku

Friday, November 1, 13

slide-47
SLIDE 47

Questions?

John Simone Build & Packaging team - Heroku @j_simone

Friday, November 1, 13

slide-48
SLIDE 48

Questions?

John Simone Build & Packaging team - Heroku @j_simone heroku.com

Friday, November 1, 13