transforming organizations with ci/cd
TRANSCRIPT
1
+
Transforming Organizations with CI/CD
Insert Names
2
+
Today’s Presenters
Joel Brass CTO at cPrime, Inc
Neil HudsonSolution Architect at CloudBees
3
+
About cPrime
4
+About CloudBees
WE AREThe Enterprise Jenkins Company
OUR GOALTo be the automation leader helping organizations develop and deliver better software faster.
WE OFFERContinuous delivery solutions powered by Jenkins at enterprise scale with enterprise support.
OUR BUSINESS VALUEWe enable IT to deliver better software faster by optimizing their use of Jenkins on premise or in the cloud.
5
+
Outline
DevOps MaturityCloudBees Jenkins Platform
Question & Answer
6
+
Photo courtesy of Naddsy via Flickr
A380
7
+The first lines of the Agile Manifesto
“Our highest priority is to satisfy the customerthrough early and continuous delivery
of valuable software.”
http://www.agilemanifesto.org/principles.html
8
+Continuous Delivery and Automation are Key
Development Production
Commit Build Test Stage Deploy
Feedback Loop
$The Business
9
+
This is Devon.
He practices Continuous Delivery.
He is a DevOps Master.
But he wasn’t always so efficient.
Let’s watch him grow.
10
+DevOps Maturity
11
+Poll: What kind of VCS are you using
1. Subversion2. Git3. TFS4. Perforce5. Something else
12
+Source Control
Version control best practices for CI/CD
• Use a descriptive commit message • Link Commits to Issues (Feature, Bug, Task)• Make each commit a logical unit• Incorporate others' changes frequently • Share your changes frequently• Don't commit generated files
Baby Devon
13
+
Build Automation
MakeMSBuildAntMavenGradleRakeJenkins Pipeline
Toddler Devon
14
+Test Automation
Kiddo DevonUnit Testing
(Code)
IntegrationTesting
UITesting
Exploratory
15
+Poll 2 How Much Test Coverage do you have?
1. Full Coverage2. Moderate Coverage3. Light Coverage4. No Coverage
16
+Continuous Integration
Frat BoyDevon• Make the build self-testing
• Everyone commits to the baseline every day• Every commit (to baseline) should be built• Keep the build fast• Test in a clone of the production environment• Make it easy to get the latest deliverables• Everyone can see the results of the latest build• Automate deployment
17
+
Release Automation
• Produce Artifacts once and store them in an artifact repository• Promote these artifacts rather than recreating them at each step. • Use a configuration management tool like Chef, Puppet, or
Ansible to manage your environments• Treat your infrastructure like code and include your playbooks
and configuration management modules with yourcode repository
HipsterDevOn
18
+Continuous Delivery
• Software is confirmed to be in a shippable state.• Stakeholders have instant visibility into
production readiness.• Teams can perform push-button deployments
on-demand.
http://martinfowler.com/bliki/ContinuousDelivery.html
ProfessorDevon
19
+Poll 3 – How many manual steps are there in your deployment?
1. 12. 2 -33. 3 or more4. Too many to count
20
+CloudBees Jenkins Platform: Perfect for Bi-Modal IT
Legacy Application
s
Monolithic
Client Server
C++
Java
N-Tier
.Net
Waterfall
Agile
Microservices
Mobile
Containers
Cloud
21
+Jenkins Pipeline (Workflow)
Single Job - Entire CD Pipeline in a single workflow (or job)Complex logic - Support complex logic like for-loops,
if-then-else, try-catch, fork-join etc…Survive restarts - While the workflow is runningHuman approval/input - Integrated human interaction into the workflow
22
+Jenkins Pipeline (Workflow) - Cont
Allocate resources - Dynamically allocate slaves and workspacesVersioning - Supports checking workflow into version control systemCheckpoints - CloudBees feature to be able to resume from a safe pointVisualization - Stage view of workflow
23
+Jenkins Powered CD Pipelines: Jenkins Pipeline
Development Production
Commit Build Stage Deploy? ?
Pipelines Need: Branching Looping Restarts
Checkpoints
Manual Input
Sonar Test
Selenium Test
Perf Test
Jenkins Pipeline
24
+CloudBees Jenkins Pipeline Stage View
Jenkins Pipeline Stage View
SOURCE CODE
CONTROL SYSTEM
Code Commit
</>
Development Production
Jenkins Pipeline
25
+Jenkins is the Hub of the CD/DevOps Ecosystem
Over 1000 Jenkins
Plugins
Integration with over 100 DevOps Tools
Orchestration of the DevOps
Toolchain
End-to-End CD Pipeline
Management
Code & Commit Build & Config Scan & Test Release Deploy
26
+Jenkins Popularity is Through the Roof
11/1/
2008
03/1/
2009
07/1/
2009
11/1/
2009
03/1/
2010
07/1/
2010
11/1/
2010
03/1/
2011
07/1/
2011
11/1/
2011
03/1/
2012
07/1/
2012
11/1/
2012
03/1/
2013
07/1/
2013
11/1/
2013
03/1/
2014
07/1/
2014
11/1/
2014
03/1/
2015
07/1/
2015
0
20,000
40,000
60,000
80,000
100,000
120,000
0
1,000,000
2,000,000
3,000,000
4,000,000
5,000,000
6,000,000
7,000,000Active Jenkins Installations WorldwideTotal Jenkins Jobs Worldwide
http://www.infoq.com/research/ci-server http://stats.jenkins-ci.org/jenkins-stats
27
+What is the CloudBees Jenkins Platform?
User ManagementRBAC/SSO/Security
Team MgmtOrganization Mgmt
Expert Technical SupportPlatinum
Gold SilverTSM
Customer Success
Management, Monitoring &
AlertingCluster Management
AnalyticsShared Resources
Dashboards
Advanced Jenkins PerformanceHigh availability, security, optimized performance
CD Pipeline Orchestration & ExecutionJenkins workflow with checkpoint, stageview, branching &
restarts
Jenkins Platform
Next Generation Infrastructure SupportDocker, AWS, Azure, Pivotal, OpenShift
Commit Build Test Stage Deploy
OSS Jenkins Core
Open Source Jenkins Plugins
28
+
Shared Build Nodes
Project Team 1 Project Team 2
Project Team 3
Project Team 4
Project Team 5
RBACLDAP
Jenkins Platform Architecture
updates.jenkins-ci.orgJenkins Operations
CenterPlugin Update Centers
Cluster Operations
Analytics
Shared Slaves
Jenkins Enterprise
Master
z
Jenkins Enterprise
Master
z
Jenkins Enterprise
Master
z
Jenkins Enterprise
Master
z
Jenkins Enterprise
Master
z
29
+CloudBees Build AnalyticsBuild Statuses
30
+CloudBees Jenkins Platform: In Cloud of Your Choice
30
Images available today:
Installers Elastic build node pools Cloud CLI support
31
+Accelerating CD with Containers
+Jenkins Workflow
TEST
STAGE
PRODUCTION
Workflow CD Pipeline Triggers: New application code (feature, bug fix, etc.) Updated certified stack (security fix in Linux, etc.) Will lead to a new gold image being built and
available for … TESTING … STAGING … PRODUCTION All taking place in a standardized/similar/consistent OS
environment
App<code> (git, etc.)
Gold DockerImage
(~per app)<OS config>
Certified Docker Images
(Ubuntu, etc.)<OS
config>
32
+
Provides first-class support for Jenkins Pipeline to build real world CD pipelines for containerized applications using Jenkins and Docker
CloudBees: Leading the Way for Docker and CD
Docker Pipeline
Build and Publish
Docker Hub Notification
Docker Traceability
Docker
Docker Custom Build Environment
Builds projects that have a Dockerfile and pushes the resultant tagged image to Docker HubTriggers downstream jobs when a tagged container is pushed to Docker HubIdentifies which build pushed a particular container that is running in production and displays that on the Jenkins builds pageUses Docker containers as standardized build environments to improve isolation and elasticity – Dockerized build nodesSpecifies customized build environments as Docker containers
33
+©
201
5 Cl
oudB
ees,
Inc.
All
Righ
ts
Rese
rved
33
CloudBees Knowledge Technical Support Technical Success Management
33© 2
015
Clou
dBee
s, In
c. A
ll Ri
ghts
Re
serv
ed
Getting Jenkins Support from the Experts
Knowledge-centered support Solving once, for many, and captured in support portal Knowledge created from every customer interaction Leveraged by customers and CloudBees support
Continuous delivery of support Article suggestions while typing a new ticket title Integrated search on support portal
34
+©
201
5 Cl
oudB
ees,
Inc.
All
Righ
ts
Rese
rved
34
CloudBees Knowledge Technical Support Technical Success Management
34© 2
015
Clou
dBee
s, In
c. A
ll Ri
ghts
Re
serv
ed
Engineer-to-engineer support Focus on a “right resource, right time” model From the whole CloudBees technical community Built from seasoned developers and contributors
to both the Jenkins core and pluginsPragmatic engagement model Web-based ticketing system Full leverage of the CloudBees Support plugin Screensharing sessions when needed
Getting Jenkins Support from the Experts
35
+
Special Offers for Webinar Attendees: Get 10% Off cPrime’s DevOps Kickstart!
36
+
We will send these links after the webinar
To learn more about Continuous Delivery using the CloudBees Jenkins Platform click here.
You can also see our last webinar recording, Continuous Delivery with Jenkins Pipeline and Docker Explained here.
37
+©
201
5 Cl
oudB
ees,
Inc.
All
Righ
ts
Rese
rved
37
Q & A