©2015CloudBees,Inc.AllRightsReserved©2015CloudBees,Inc.AllRightsReserved
Orchestrating Continuous Delivery
CD Summit – Austin – October, 2015
@apemberton
©2015CloudBees,Inc.AllRightsReserved©2015CloudBees,Inc.AllRightsReserved
#CDSummit
2
©2015CloudBees,Inc.AllRightsReserved
3
“Software is eating the world.”
“Every business is in the
software business.”
“It’s an
application
economy.”
©2015CloudBees,Inc.AllRightsReserved
GPS
4
©2015CloudBees,Inc.AllRightsReserved
GPS
5
©2015CloudBees,Inc.AllRightsReserved
6
Photo courtesy of Steve Jurvetson via Flickr
©2015CloudBees,Inc.AllRightsReserved
7
How Do You Deliver Better Software Faster?
ProdDev
©2015CloudBees,Inc.AllRightsReserved
8
Automate
Photo courtesy of Steve Jurvetson via Flickr
©2015CloudBees,Inc.AllRightsReserved
Continuous Delivery (CD) Automates the SDLC
ProdDev BuildCommit Test Stage Deploy
Feedback Loop
©2015CloudBees,Inc.AllRightsReserved
CD Starts with Continuous Integration (CI):
Automating Application Build and Test *
Continuous Integration
ProdDev
Automation
Engine
Developer
Source
Code
Control
System
Compile
/BuildCode
Scan TestsCode
Commit
Results
Report
BuildCommit Test
©2015CloudBees,Inc.AllRightsReserved
Automation
Engine
Developer
Source
Code
Control
System
Compile
/BuildCode
Scan TestsCode
Commit
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
©2015CloudBees,Inc.AllRightsReserved
Continuous Delivery – Testing Spectrum
12
Unit Tests
Integration
Tests
Quality
Tests
Functional
Tests
Security Tests
Performance
Tests
System
Tests
©2015CloudBees,Inc.AllRightsReserved
13
©2015CloudBees,Inc.AllRightsReserved
How Not To Do CD
by Andy Pemberton
©2015CloudBees,Inc.AllRightsReserved
CD Vision
IDE
Git
Jenkins
Gradle
Sonar
Security
Scan
Int. Tests
Artifactory
Puppet Jetty
©2015CloudBees,Inc.AllRightsReserved
So Off We Went…
©2015CloudBees,Inc.AllRightsReserved
©2015CloudBees,Inc.AllRightsReserved
Continuous Delivery Vision
©2015CloudBees,Inc.AllRightsReserved
Continuous Delivery Vision - Refactored
©2015CloudBees,Inc.AllRightsReserved
Don’t Boil the Ocean
20
©2015CloudBees,Inc.AllRightsReserved
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
©2015CloudBees,Inc.AllRightsReserved
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
22
©2015CloudBees,Inc.AllRightsReserved
With Workflow, Jenkins is Now Your Key to
Continuous Delivery
Developer
Source
Code
Control
System
Compile
/BuildCode
Scan TestsCode
Commit
Results
Report
BuildCommit Test Stage Deploy
Deploy
Prod
Deploy
Stage
Complex Delivery Pipelines
Delivery of App and Config
Continuous Delivery
ProdDev
©2015CloudBees,Inc.AllRightsReserved
Developer
Source
Code
Control
System
Code
Commit
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
©2015CloudBees,Inc.AllRightsReserved
Workflow Pipelines – Complex and Robust
Continuous Delivery
ProdDev
Perf Test
BuildCommit
Selenium
Test
Stage Deploy
Sonar
Test
Pipelines Need:
• Branching
• Looping
• Restarts
• Checkpoints
• Manual Input
??
©2015CloudBees,Inc.AllRightsReserved
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
26
©2015CloudBees,Inc.AllRightsReserved
DeployStageTest
Deploy
Build
StageTestBuild
DeployStageTestBuild
DeployStageTestBuild
Executing, Monitoring, and Providing Feedback
Commit ProdDev
Commit
Commit
Commit
Continuous Delivery
Developer
Source
Code
Control
System
Code
Commit
©2015CloudBees,Inc.AllRightsReserved
Workflow Stage View Enables CD Pipeline Monitoring
Continuous Delivery
ProdDev
Developer
Source
Code
Control
System
Code
Commit
• Branching
• Looping
• Restarts
• Checkpoints
• Manual Input
©2015CloudBees,Inc.AllRightsReserved
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)
Automated
Regression
Tests
Release
(to Prod)
User
Acceptance
Tests
Load &
Security
Tests
©2015CloudBees,Inc.AllRightsReserved
Jenkins is the Hub of the CD Ecosystem
On-premise or
in the cloud
Plug-ins for all
your tools
RunDeployStageTestBuildCommit
©2015CloudBees,Inc.AllRightsReserved
© 2015 CloudBees, Inc. All Rights Reserved
Open Source Innovation Meets Enterprise Strength
31
Jenkins
OSS
Community Powered CI/CD Innovation Jenkins for the Enterprise
Jenkins Platform
©2015CloudBees,Inc.AllRightsReserved
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
©2015CloudBees,Inc.AllRightsReserved
CloudBees is Powering CD Across Industries
A sampling of CloudBees customers
©2015CloudBees,Inc.AllRightsReserved
Additional Jenkins Services from CloudBees
34
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
©2015CloudBees,Inc.AllRightsReserved©2015CloudBees,Inc.AllRightsReserved
Thank You!
www.cloudbees.com
@apemberton

cdSummit Austin - Orchestrating the continuous delivery process - Andy Pemberton