Part 3: Enabling Continuous Delivery (Pivotal Cloud Platform Roadshow: Seattle)
Upcoming SlideShare
Loading in...5
×
 

Part 3: Enabling Continuous Delivery (Pivotal Cloud Platform Roadshow: Seattle)

on

  • 471 views

Enabling Continuous Delivery with Matt Stine ...

Enabling Continuous Delivery with Matt Stine

The primary goals of this session are to:

Give a brief, platform-agnostic overview of the “why” and “what” of Continuous Delivery. The purpose is to simply educate the student and bring everyone to the same level.

Explain how Cloud Foundry benefits Continuous Delivery.

Provide a hands-on lab experience where the student takes a Spring Boot microservice application and builds a continuous delivery pipeline for it using Jenkins, Artifactory, and Cloud Foundry. This is all done using free trial SaaS versions of the software.

Pivotal Cloud Platform Roadshow is coming to a city near you!
Join Pivotal technologists and learn how to build and deploy great software on a modern cloud platform. Find your city and register now http://bit.ly/1poA6PG

Statistics

Views

Total Views
471
Views on SlideShare
457
Embed Views
14

Actions

Likes
3
Downloads
38
Comments
0

2 Embeds 14

https://twitter.com 10
http://www.slideee.com 4

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Part 3: Enabling Continuous Delivery (Pivotal Cloud Platform Roadshow: Seattle) Part 3: Enabling Continuous Delivery (Pivotal Cloud Platform Roadshow: Seattle) Presentation Transcript

  • Pivotal Cloud Platform Deep Dive Part 3: Enabling Continuous Delivery Matt Stine (@mstine) Cloud Foundry Platform Engineer mstine@pivotal.io © Copyright 2014 Pivotal. All rights reserved. 1
  • Before we get started… © Copyright 2014 Pivotal. All rights reserved. 2
  • Setup Prerequisites • CloudBees Account (Jenkins) http://grandcentral.cloudbees.com • JFrog Artifactory Online Account https://www.jfrog.com/registration/registration.html © Copyright 2014 Pivotal. All rights reserved. 3 View slide
  • © Copyright 2014 Pivotal. All rights reserved. CloudBees 4 View slide
  • © Copyright 2014 Pivotal. All rights reserved. 5
  • © Copyright 2014 Pivotal. All rights reserved. 6
  • © Copyright 2014 Pivotal. All rights reserved. 7
  • © Copyright 2014 Pivotal. All rights reserved. 8
  • © Copyright 2014 Pivotal. All rights reserved. 9
  • © Copyright 2014 Pivotal. All rights reserved. 10
  • © Copyright 2014 Pivotal. All rights reserved. Artifactory Online 11
  • © Copyright 2014 Pivotal. All rights reserved. 12
  • © Copyright 2014 Pivotal. All rights reserved. 13
  • © Copyright 2014 Pivotal. All rights reserved. 14
  • © Copyright 2014 Pivotal. All rights reserved. 15
  • © Copyright 2014 Pivotal. All rights reserved. 16
  • © Copyright 2014 Pivotal. All rights reserved. 17
  • © Copyright 2014 Pivotal. All rights reserved. 18
  • Enabling Continuous Delivery • Setup Prerequisites • Continuous Delivery Overview • How Cloud Foundry Enables Continuous Delivery • Lab: Setup a CD Pipeline with Jenkins, Artifactory, CF Client, and PWS © Copyright 2014 Pivotal. All rights reserved. 19
  • Meet Henry (Our Business Owner) 20 !
  • Meet Henry ! 21
  • Meet Henry ! He needs an app built in the next 8 weeks 21
  • Meet Henry ! He needs an app built in the next 8 weeks He knows what the app should do 21
  • Meet Henry ! He needs an app built in the next 8 weeks He knows what the app should do He expects competitors to try to beat us to market 21
  • Meet Jane (Our App Architect) 22 !
  • Meet Jane ! 23
  • Meet Jane Jane is a little worried: ! 23
  • Meet Jane Jane is a little worried: Not everyone understands agile here ! 23
  • Meet Jane Jane is a little worried: Not everyone understands agile here Environment setup takes a long time ! 23
  • Meet Jane Jane is a little worried: ! Not everyone understands agile here Environment setup takes a long time 8 Weeks isn’t much time to get a release to production (!) 23
  • Continuous Delivery To The Rescue! 24
  • Continuous Deployment 25 Github: On August 23, 2012 – 563 builds and 175 deploys github.com/blog/1241-deploying-at-github
  • Continuous Delivery != Continuous Deployment 26 !
  • Continuous Delivery != Continuous Deployment 27 twitter.com/ccaum/statuses/372620989257232384
  • The Difference: ! Who Presses The Button For A Production Deployment? 28
  • What Could Get In Jane’s Way? 29
  • 30 www.flickr.com/photos/nnova/3399904953
  • Cycle Time 30 www.flickr.com/photos/nnova/3399904953
  • Cycle Time How Long Does It Take To Deploy One Line Of Code To Production? 30 www.flickr.com/photos/nnova/3399904953
  • 31 www.flickr.com/photos/denimdave/6334224428
  • Silos 31 www.flickr.com/photos/denimdave/6334224428
  • Silos … But We Have A DevOps Team! 31 www.flickr.com/photos/denimdave/6334224428
  • 32 www.flickr.com/photos/kevgilmour/4843051331
  • Process 32 www.flickr.com/photos/kevgilmour/4843051331
  • Process You Need To Open A Ticket For That! 32 www.flickr.com/photos/kevgilmour/4843051331
  • 33 www.flickr.com/photos/tenspeedphotography/5450456783
  • Feedback Loop 33 www.flickr.com/photos/tenspeedphotography/5450456783
  • Feedback Loop Are We Building The Right Thing? 33 www.flickr.com/photos/tenspeedphotography/5450456783
  • 34
  • 34 Change
  • 34 Change Production Breaks When Changes Are Made (!) … Right?
  • Jane Needs Some Help (This Seems Insurmountable) 35
  • Strategies For Success 36
  • Strategies For Success Do Implement Continuous Integration 37
  • Strategies For Success Do Implement Continuous Integration 37 !
  • Strategies For Success Do Not Create Environment Specific Packages 38
  • Strategies For Success Do Not Create Environment Specific Packages 38 ! ! ! ! !
  • Strategies For Success Do Externalize Environment Specific Configuration 39
  • Strategies For Success Do Externalize Environment Specific Configuration ! ! ! | ! ! ! 39
  • Strategies For Success Do Automate Everything 40
  • Strategies For Success Do Automate Everything 40 !
  • Strategies For Success Do Not Assume Existing Processes Are Right (Engage In Continuous Improvement) 41
  • Strategies For Success Do Not Assume Existing Processes Are Right (Engage In Continuous Improvement) 41 !
  • Strategies For Success Do Not Use A Different Process For Different Environments 42
  • Strategies For Success Do Not Use A Different Process For Different Environments 42 ! ! ! ! !
  • Strategies For Success Do Recreate App Environments Frequently (Also Known As: Servers Are Not Puppies) 43
  • Strategies For Success Do Recreate App Environments Frequently (Also Known As: Servers Are Not Puppies) 43 !
  • Strategies For Success Do Ensure Database Changes Are Automated 44
  • Strategies For Success Do Ensure Database Changes Are Automated 44 ! ! ! ! !
  • Strategies For Success Do Deploy Less More Frequently ! 45
  • Strategies For Success Do Deploy Less More Frequently ! 45 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! v2.1
  • Strategies For Success Do Deploy Less More Frequently ! 45 ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! v2.1 v2.1 ! ! ! ! v2.2 ! ! ! ! ! ! v2.3 ! ! !
  • Strategies For Success Do Automate All Testing Where Test Failures Would Prevent A Production Release From Occurring ! 46
  • Strategies For Success Do Automate All Testing Where Test Failures Would Prevent A Production Release From Occurring ! 46 ! ! ! |! ! !
  • Strategies For Success Do Try To Use Tools That Support The Process (But Don’t Get Stuck In Tool Selection Hell!) 47
  • Strategies For Success Do Try To Use Tools That Support The Process (But Don’t Get Stuck In Tool Selection Hell!) 47 g ! !
  • Enabling Continuous Delivery • Setup Prerequisites • Continuous Delivery Overview • How Cloud Foundry Enables Continuous Delivery • Lab: Setup a CD Pipeline with Jenkins, Artifactory, CF Client, and PWS © Copyright 2014 Pivotal. All rights reserved. 48
  • Cloud Foundry Helps Jane… 49
  • Cloud Foundry Helps Jane… Get A New App Environment In Seconds 50
  • Cloud Foundry Helps Jane… Get A New App Environment In Seconds 50 ! in a !
  • Cloud Foundry Helps Jane… Have Complete Consistency Between Environments 51
  • Cloud Foundry Helps Jane… Have Complete Consistency Between Environments 51 ! ! ! ! !
  • Cloud Foundry Helps Jane… Have A Consistent API To Automate Deployments 52
  • Cloud Foundry Helps Jane… Have A Consistent API To Automate Deployments 52 ! ! ! ! !
  • Cloud Foundry Helps Jane… Inject Environment Specific Configuration 53
  • Cloud Foundry Helps Jane… Inject Environment Specific Configuration 53 ! ! !
  • Cloud Foundry Helps Jane… Inject External Dependencies 54
  • Cloud Foundry Helps Jane… Inject External Dependencies 54 ! ! !
  • 55 Cloud Foundry Helps Jane… Promote Apps Through Environments With The Same Process !
  • 55 Cloud Foundry Helps Jane… Promote Apps Through Environments With The Same Process ! !
  • 55 Cloud Foundry Helps Jane… Promote Apps Through Environments With The Same Process ! !! ! ! ! ! !
  • Cloud Foundry Helps Jane… 56
  • Cloud Foundry Helps Jane… By Providing New Options: 56
  • Cloud Foundry Helps Jane… By Providing New Options: + Canary Deployment 56
  • Cloud Foundry Helps Jane… By Providing New Options: + Canary Deployment + Zero Downtime Deployment 56
  • Cloud Foundry Helps Jane… By Providing New Options: + Canary Deployment + Zero Downtime Deployment + A/B Testing 56
  • Cloud Foundry Helps Jane… By Providing New Options: + Canary Deployment + Zero Downtime Deployment + A/B Testing + Scale Apps On-Demand 56
  • Cloud Foundry Helps Jane… By Providing New Options: + Canary Deployment + Zero Downtime Deployment + A/B Testing + Scale Apps On-Demand 56
  • App Developers Can Be More Successful When They Are Supported By Agile Infrastructure 57
  • App Developers Can Be More Successful When They Are Supported By Agile Infrastructure 57 !
  • Enabling Continuous Delivery • Setup Prerequisites • Continuous Delivery Overview • How Cloud Foundry Enables Continuous Delivery • Lab: Setup a CD Pipeline with Jenkins, Artifactory, CF Client, and PWS © Copyright 2014 Pivotal. All rights reserved. 58
  • Lab • Follow the instructions found at https://github.com/cf-platform- eng/cf-workshop-cd-module using your: • Pivotal Web Services Account • CloudBees Account • Artifactory Online Account © Copyright 2014 Pivotal. All rights reserved. 59
  • Enabling Continuous Delivery • Setup Prerequisites • Continuous Delivery Overview • How Cloud Foundry Enables Continuous Delivery • Lab: Setup a CD Pipeline with Jenkins, Artifactory, CF Client, and PWS © Copyright 2014 Pivotal. All rights reserved. 60
  • Coming Up • Break (4:00 - 4:15) • Part Four (4:15 - 5:30) • Learn CF Extension Points • Customize a Buildpack -OR- •Write and Deploy a Service Broker © Copyright 2014 Pivotal. All rights reserved. 61
  • THANK YOU! See you after the break! © Copyright 2014 Pivotal. All rights reserved. 62 Matt Stine (@mstine) Cloud Foundry Platform Engineer mstine@pivotal.io