35
© 2015 CloudBees, Inc. All Rights Reserved © 2015 CloudBees, Inc. All Rights Reserved Orchestrating Continuous Delivery CD Summit – Austin – October, 2015 @apemberton

cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

Embed Size (px)

Citation preview

Page 1: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

201

5 Cl

oudB

ees,

Inc.

All

Righ

ts R

eser

ved

Orchestrating Continuous DeliveryCD Summit – Austin – October, 2015

@apemberton

Page 2: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

2

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d #CDSummit

Page 3: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

3

“Software is eating the world.”

“Every business is in the software business.”

“It’s anapplication economy.”

Page 4: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

4

GPS

Page 5: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

5

GPS

Page 6: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

6Photo courtesy of Steve Jurvetson via Flickr

Page 7: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

7

How Do You Deliver Better Software Faster?

ProdDev

Page 8: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

8

Automate

Photo courtesy of Steve Jurvetson via Flickr

Page 9: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Continuous Delivery (CD) Automates the SDLC

ProdDev BuildCommit Test Stage Deploy

Feedback Loop

Page 10: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

CD Starts with Continuous Integration (CI): Automating Application Build and Test *

Continuous Integration

ProdDev

Automation Engine

Developer

Source Code

Control System

Compile/BuildCode

Scan TestsCodeCommit

Results Report

BuildCommit Test

Page 11: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Automation Engine

Developer

Source Code

Control System

Compile/BuildCode

Scan TestsCodeCommit

Results Report

CD Then Extends Automation Across the Lifecycle

BuildCommit Test Stage Deploy

Deploy Prod

Deploy Stage

Complex Delivery Pipelines

Delivery of App and Config

Enterprise-grade CD Automation Platform

Continuous Delivery

ProdDev

Page 12: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Continuous Delivery – Testing Spectrum

12

Unit Tests

Integration Tests

Quality Tests

Functional Tests

Security Tests

Performance Tests

System Tests

Page 13: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

13

Page 14: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

How Not To Do CDby Andy Pemberton

Page 15: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

CD Vision

IDE

Git

Jenkins

Gradle

Sonar

SecurityScan

Int. Tests

Artifactory

Puppet Jetty

Page 16: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

So Off We Went…

Page 17: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Page 18: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Continuous Delivery VisionReality

Page 19: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Continuous Delivery Vision - Refactored

Page 20: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

20

Don’t Boil the Ocean

Page 21: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Take the Small Wins and Iterate!• QA could now perform their own deployments

– … and that’s how I became best friends with the QA manager

– Saved multiple hours, 2-3x per sprint, 40 developers == $$$

• … and 12.8% code coverage 71% code coverage

• By the way, 12 teams == 12 dev-int servers --- my next challenge

Page 22: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

22

Leverage Your Team• Transformations are taking place across the globe (Agile,

CI/CD, etc.)

• Key roles are changing, too (traditional QA to SDET / Test Engineer)

• Spot talent, re-train, and re-tool– Example with BDD

Page 23: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

With Workflow, Jenkins is Now Your Key to Continuous Delivery

Developer

Source Code

Control System

Compile/BuildCode

Scan TestsCodeCommit

Results Report

BuildCommit Test Stage Deploy

Deploy Prod

Deploy Stage

Complex Delivery Pipelines

Delivery of App and Config

Continuous Delivery

ProdDev

Page 24: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Developer

Source Code

Control System

CodeCommit

Workflow Enables Pipelines for Application Code

BuildCommit Test Stage Deploy

Continuous Delivery

ProdDev

BuildCommit Test Stage Deploy

BuildCommit Test Stage Deploy

BuildCommit Test Stage Deploy

Page 25: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Workflow Pipelines – Complex and Robust

Continuous Delivery

ProdDevPerf Test

BuildCommit Selenium Test Stage Deploy

Sonar Test

Pipelines Need:• Branching• Looping• Restarts• Checkpoints• Manual Input

??

Page 26: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

26

Key Workflow Features• Sophisticated pipeline semantic

– For loops, try-finally, fork-join …

• Resiliency– Restart Jenkins while flow is running

• Allocate slave nodes and workspaces– As many as you want, when you want

• Stages throttle concurrency of builds

• Secure human input / approval integrated into flow

• Standard project concepts: SCM, artifacts, plugins

Page 27: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

DeployStageTest

Deploy

Build

StageTestBuild

DeployStageTestBuild

DeployStageTestBuild

Executing, Monitoring, and Providing Feedback

Commit ProdDev

Commit

Commit

Commit

Continuous Delivery

Developer

Source Code

Control System

CodeCommit

Page 28: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Workflow Stage View Enables CD Pipeline Monitoring

Continuous Delivery

ProdDev

Developer

Source Code

Control System

CodeCommit

• Branching• Looping• Restarts• Checkpoints• Manual Input

Page 29: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Over 1000 Jenkins Plugins for Tool Integration

Integrated Development Environments (IDEs), editors/compilers/debuggers, code review and collaboration tools.

Source code control systems and related asset management tools.

Automated API-based testing frameworks.

Release management and release automation software

Automated API-based testing frameworks, static code analysis tools.

Load Testing Tools and Security Scanning technology

Automated and manual UAT tools

Release management, release automation, and change control software.

Environment and Configuration Management SoftwareDevelop

Commit

Build & Integrate

Unit Tests

Release(to Test)

AutomatedRegression Tests

Release(to Prod)

User Acceptance Tests

Load & Security Tests

Page 30: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Jenkins is the Hub of the CD Ecosystem

On-premise or in the cloud

Plug-ins for all your tools

RunDeployStageTestBuildCommit

Page 31: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

© 2015 CloudBees, Inc. All Rights Reserved

Open Source Innovation Meets Enterprise Strength

31

JenkinsOSS

Community Powered CI/CD Innovation Jenkins for the Enterprise

Jenkins Platform

Page 32: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

Example: Monitoring, Visualization and Analytics

Jenkins Workflow Stage View – Visibility into Pipeline status

Jenkins Analytics – Cross-Team Build Analytics

… among many other features, tailored for enterprise organizations using Jenkins @ scale

Page 33: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

CloudBees is Powering CD Across IndustriesA sampling of CloudBees customers

Page 34: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

d

34

Additional Jenkins Services from CloudBees

Jenkins Certified Training• Delivered via CloudBees partners

Jenkins Consulting• Delivered via CloudBees Professional Services Team

Jenkins Newsletter• Community news and expert tips

Jenkins User Conferences• Learn from other community

members

Page 35: cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton

© 2

015

Clou

dBee

s, In

c. A

ll Ri

ghts

Res

erve

201

5 Cl

oudB

ees,

Inc.

All

Righ

ts R

eser

ved

Thank You!www.cloudbees.com@apemberton