SlideShare a Scribd company logo
1 of 21
Download to read offline
Jenkins User Conference Boston #jenkinsconf
Building Your Continuous
Delivery Toolkit
T.j. Randall
XebiaLabs
xebialabs.com
@xebialabs
June 18, 2014
#jenkinsconf
Jenkins User Conference Boston #jenkinsconf
Why a discussion about “other tools” at a JUC
conference?
•  It's ok to think you may need additional tooling to
solve your issue for everything that you need to do.
•  Clearly the reason you expanded Jenkins in this
area is that it's a great tool, and you can do
anything with Jenkins!
•  You’re hitting some challenges:
–  Maybe you’ve built a solution, it's running in PROD, and
you're having challenges maintaining it.
–  Or, maybe you want more, and you can't take out what
you’ve currently built because it solves some specific
needs.
Jenkins User Conference Boston #jenkinsconf
What do we use?
We love Jenkins ourselves and use it for our continuous
integration needs
•  Build Failure Analyzer
–  Helps us to understand why builds are failing, especially when
analying possible infrastructure issues.
•  Matrix Reloaded Plugin
–  Allows users to easily rebuild parts of an already built Matrix build. 
•  Promoted Builds Plugin
–  Distinguish good builds from bad builds by introducing the notion of
'promotion'. 
•  Throttle Concurrent Builds Plugin
–  For throttling the number of concurrent builds of a project running per
node or globally.
Jenkins User Conference Boston #jenkinsconf
What do we see others use?
I get the benefit to go to lots of different customers, in all kinds of
verticals, and see how they are using Jenkins.
•  Build Monitor Plugin
–  Great for teams to publish build results on screens
•  Swarm Plugin
–  Enables slaves to auto-discover nearby Jenkins master and join it
automatically, thereby forming an ad-hoc cluster.
•  Shelve Project Plugin
–  Lets you shelve projects so that they can easily be resurrected.  (delayed
trashcan ;)
•  Timestamper
–  Adds timestamps to builds. Makes it easier to understand what is running
slowing, or see that a job is stuck without activity.
Jenkins User Conference Boston #jenkinsconf
When do some people start to think about
other tools
When do you hit the edges of your CI tool?
–  Security: authentication in DEV, QA & PROD from CI tool
–  Reporting: providing necessary documentation for release
  
Jenkins has the luxury problem based on its success
–  People have expanded technically, and are reaching
limits (“everything is possible”) 
–  Expanding into areas where they hit organizational
problems
Jenkins User Conference Boston #jenkinsconf
The Onion of Continuous Delivery
The onion is bigger than Jenkins - in each layer is more
"pain” (but not necessarily in this order)
Capacity /
Slave Pool
Pipelines
Deployment
Code
Coverage
Code Build
Integration
testing
Onion represents technical
challenges, as well as multiple
parts of the organization
–  Consumer audience not
happy with how
information is presented
Release
Management
Jenkins User Conference Boston #jenkinsconf
What do you need for Continuous Delivery?
(as it relates to teams)
Ever notice that our CD tooling is a lot like this?
Jenkins User Conference Boston #jenkinsconf
How do you "Productionalize" a Toolkit
•  How do you include all of your teams in your
continuous delivery tool set? How did your
automation tools get chosen?
•  Who maintains your automation tools?
–  Upgrades? Compliance?
•  Most organizations try to limit/avoid cross-
team activities when choosing a tool.
Jenkins User Conference Boston #jenkinsconf
Outline for Continuous Delivery Tools
Let’s take a look at five technical needs for continuous delivery
as they relate to both tools and teams.
–  Continuous Integration
–  Deployment
–  Scaling
–  Test
–  Release Management
For the conversation, we’ll use five teams that you might come
across as part of your application release process.
–  DEV
–  QA
–  DBA
–  Network Services
–  Ops
Jenkins User Conference Boston #jenkinsconf
Continuous Integration (reality)
Team What they currently have
DEV CI tool that allows them to quickly build applications, as well
as many other DEV teams normally drive this decision
QA “CI tool? We don’t need no stinkin’ CI tool!”
DBA “I don’t check SQL into a SCM.”
Network Services “What’s a CI tool?”
OPS “What’s a CI tool?”
Business “What’s a CI tool?”
VERY hard to answer “What Changed?”, “Why Changed?” and “How Changed?”
Jenkins User Conference Boston #jenkinsconf
Continuous Integration
Team What they need
DEV Same CI tool for all teams. Commits can document
why a change was made. (not just “fixed variable assignment”)
QA QA needs to understand the changes as the relate to
request (enhancement, bug fix, etc.)
DBA SQL scripts are code. Check them in.
Network Services Scripts are code. Check them in.
OPS Can use CI information for understanding parts of
system that are changing.
Business Visibility into the delivery of their changes
Jenkins User Conference Boston #jenkinsconf
Deployment (reality)
Team What they currently have
DEV Some tools, some custom scripting, some magic sauce
QA “You’re not putting that tool in MY environment!”
DBA “You can’t automated database deployments. Just
call us when you’re ready.”
Network Services “There’s a deployment going on? Why didn’t anyone
tell us?!”
OPS “Why are there seven tabs of instructions for one
app?!”
Business “Can someone please tell us when we can log in to
test?”
Different deployment tools and processes across environments
Jenkins User Conference Boston #jenkinsconf
Deployment
Team What they need
DEV Tooling that ensures consistent, fast deployments in
environments.
QA Deployments based on same process as DEV, with no
manual steps.
DBA Either SQL code is part of automated deployment, or
notifications included in overall automation.
Network Services Visibility into current and upcoming deployments
OPS Same deployment process as earlier environments, with
no manual steps
Business Visibility into current and upcoming deployments,
along with automated notifications.
Jenkins User Conference Boston #jenkinsconf
Scaling (some versions of reality)
Team What they currently have
DEV Scripting to instantiate needed environments
QA Requests made to Network Services for infrastructure
DBA “You can’t scale databases!”
Network Services Service entity for creating, maintaining and granting access
to infrastructure
OPS “We’ve got our own environments to maintain”
Business “What address do I put in the browser?”
Difficulty creating, maintaining and accessing scaled infrastructure
Jenkins User Conference Boston #jenkinsconf
Scaling
Team What they need
DEV Infrastructure scaled as part of CI / deployment
process
QA Infrastructure scaled as part of deployment process
DBA Hop in the pool! The water is great!
Network Services Visibility / access to all infrastructure
OPS Visibility / access to all infrastructure
Business Clear information about infrastructure available for
access
Jenkins User Conference Boston #jenkinsconf
Test (reality)
Team What they currently have
DEV CI tools provide a lot of functionality here. Tests not related to
other groups (to help avoid duplication)
QA Normally choose/maintain their own test tools. Tests are
created based on conversations with DEV and business. QA
is the first “integrated” environment.
DBA “Testing? The database is up….”
Network Services Normally choose/maintain their own tools, which are not
accessible/used by other teams
OPS Ad hoc reports of tests completed
Business “We’ll do our own “smoke” (manual) testing, and track the
results in a spreadsheet”
Silos of information, as well as non-consistent testing across environments
Jenkins User Conference Boston #jenkinsconf
Test
Team What they need
DEV Test tool that gives quick results on each build. Same tests are
available to other teams for their use
QA Tooling that gives them much broader coverage/feedback,
as well as testing in earlier environments.
DBA Database needs to be tested also – not just load testing!
Network Services Testing application as it relates to infrastructure in each
environment
OPS Tests that validate release is successful
Business Feedback into all groups about testing requirements, so that
more automated tests can be built
Jenkins User Conference Boston #jenkinsconf
Release Management (aka “Excel”)
Team What they currently have
DEV Some tooling (ex/ JIRA); E-mails sent to PM to relate
what is being worked on
QA Sources of information (e-mail, defect system,
spreadsheets, etc.) to relate what is in QA / what is
coming.
DBA “Just tell us when to deploy your SQL.”
Network Services “I’ve got my own releases to maintain – I can squeeze
you in next Thursday.”
OPS “Wednesday release meeting (kinda) tells me what to
expect this week-end.”
Business “When are my features getting delivered?!”
Kludge, manual, broken communication for the most important thing!
Jenkins User Conference Boston #jenkinsconf
Release Management
Team What they need
DEV CI, deployment, scaling and testing information feeds
into release management system
QA Release management drives dates so that QA is part of
overall release, not viewed as a bottleneck
DBA Team actively participates in their portion(s) of the
release process
Network Services Included, but not necessarily actively involved, with
application release
OPS Easily access all information about all releases.
Business Ability to access and participate in release process
Jenkins User Conference Boston #jenkinsconf
(not so) Clever closing…
Did I mention I was a vendor?
Jenkins User Conference Boston #jenkinsconf
Thank You To Our Sponsors
Platinum Gold
Silver

More Related Content

What's hot

XebiaLabs @ Jenkins User Conference NYC 2014
XebiaLabs @ Jenkins User Conference NYC 2014XebiaLabs @ Jenkins User Conference NYC 2014
XebiaLabs @ Jenkins User Conference NYC 2014
XebiaLabs
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
Dmitry Buzdin
 
Neal Ford Emergent Design And Evolutionary Architecture
Neal Ford Emergent Design And Evolutionary ArchitectureNeal Ford Emergent Design And Evolutionary Architecture
Neal Ford Emergent Design And Evolutionary Architecture
Thoughtworks
 

What's hot (20)

Continuous delivery for databases
Continuous delivery for databasesContinuous delivery for databases
Continuous delivery for databases
 
Automate Database Deployment - SQL In The City Workshop
Automate Database Deployment - SQL In The City WorkshopAutomate Database Deployment - SQL In The City Workshop
Automate Database Deployment - SQL In The City Workshop
 
Database continuous integration, unit test and functional test
Database continuous integration, unit test and functional testDatabase continuous integration, unit test and functional test
Database continuous integration, unit test and functional test
 
DevOps Overview
DevOps OverviewDevOps Overview
DevOps Overview
 
What Is Slowing My Application Releases?
What Is Slowing My Application Releases?What Is Slowing My Application Releases?
What Is Slowing My Application Releases?
 
XebiaLabs @ Jenkins User Conference NYC 2014
XebiaLabs @ Jenkins User Conference NYC 2014XebiaLabs @ Jenkins User Conference NYC 2014
XebiaLabs @ Jenkins User Conference NYC 2014
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Deploying An Optimized Desktop - XP to 7 With P2V
Deploying An Optimized Desktop - XP to 7 With P2VDeploying An Optimized Desktop - XP to 7 With P2V
Deploying An Optimized Desktop - XP to 7 With P2V
 
Spark 2013 Presentation of making the enterprise agile
Spark 2013 Presentation of making the enterprise agileSpark 2013 Presentation of making the enterprise agile
Spark 2013 Presentation of making the enterprise agile
 
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
 
How to Build a DevOps Toolchain
How to Build a DevOps ToolchainHow to Build a DevOps Toolchain
How to Build a DevOps Toolchain
 
Security Implications for a DevOps Transformation
Security Implications for a DevOps TransformationSecurity Implications for a DevOps Transformation
Security Implications for a DevOps Transformation
 
Neal Ford Emergent Design And Evolutionary Architecture
Neal Ford Emergent Design And Evolutionary ArchitectureNeal Ford Emergent Design And Evolutionary Architecture
Neal Ford Emergent Design And Evolutionary Architecture
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Continuous Integration, Continuous Quality, Continuous Delivery
Continuous Integration, Continuous Quality, Continuous DeliveryContinuous Integration, Continuous Quality, Continuous Delivery
Continuous Integration, Continuous Quality, Continuous Delivery
 
Behavior Driven Development (BDD)
Behavior Driven Development (BDD)Behavior Driven Development (BDD)
Behavior Driven Development (BDD)
 
An introduction to DevOps
An introduction to DevOpsAn introduction to DevOps
An introduction to DevOps
 
Chef for DevOps - an Introduction
Chef for DevOps - an IntroductionChef for DevOps - an Introduction
Chef for DevOps - an Introduction
 
Java / Opening Open Source the Jenkins Way - Nicolas de Loof, CloudBees
Java / Opening Open Source the Jenkins Way - Nicolas de Loof, CloudBeesJava / Opening Open Source the Jenkins Way - Nicolas de Loof, CloudBees
Java / Opening Open Source the Jenkins Way - Nicolas de Loof, CloudBees
 
#speakgell - Continuous Integration in iconnect360
#speakgell - Continuous Integration in iconnect360#speakgell - Continuous Integration in iconnect360
#speakgell - Continuous Integration in iconnect360
 

Similar to XebiaLabs @ Jenkins User Conference Boston 2014

Jenkins User Conference: Building Your Continuous Delivery Toolkit
Jenkins User Conference: Building Your Continuous Delivery ToolkitJenkins User Conference: Building Your Continuous Delivery Toolkit
Jenkins User Conference: Building Your Continuous Delivery Toolkit
XebiaLabs
 
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
Simplilearn
 

Similar to XebiaLabs @ Jenkins User Conference Boston 2014 (20)

Building your Continuous Delivery Toolkit @ JUC SF 2014
Building your Continuous Delivery Toolkit @ JUC SF 2014Building your Continuous Delivery Toolkit @ JUC SF 2014
Building your Continuous Delivery Toolkit @ JUC SF 2014
 
Scaling Enterprise DevOps with CloudBees
Scaling Enterprise DevOps with CloudBeesScaling Enterprise DevOps with CloudBees
Scaling Enterprise DevOps with CloudBees
 
Jenkins User Conference: Building Your Continuous Delivery Toolkit
Jenkins User Conference: Building Your Continuous Delivery ToolkitJenkins User Conference: Building Your Continuous Delivery Toolkit
Jenkins User Conference: Building Your Continuous Delivery Toolkit
 
Dev ops using Jenkins
Dev ops using JenkinsDev ops using Jenkins
Dev ops using Jenkins
 
Using Jenkins as your go-to CI/CD tool
Using Jenkins as your go-to CI/CD toolUsing Jenkins as your go-to CI/CD tool
Using Jenkins as your go-to CI/CD tool
 
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
 
DevOps and Microservice
DevOps and MicroserviceDevOps and Microservice
DevOps and Microservice
 
Build Time Hacking
Build Time HackingBuild Time Hacking
Build Time Hacking
 
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
 
Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing
Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing
Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing
 
Five Ways Automation Has Increased Application Deployment and Changed Culture
Five Ways Automation Has Increased Application Deployment and Changed CultureFive Ways Automation Has Increased Application Deployment and Changed Culture
Five Ways Automation Has Increased Application Deployment and Changed Culture
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 
varun JENKINS.pptx
varun JENKINS.pptxvarun JENKINS.pptx
varun JENKINS.pptx
 
Cloud continuous integration- A distributed approach using distinct services
Cloud continuous integration- A distributed approach using distinct servicesCloud continuous integration- A distributed approach using distinct services
Cloud continuous integration- A distributed approach using distinct services
 
Visual Studio 2015 - Lançamento está próximo
Visual Studio 2015 - Lançamento está próximoVisual Studio 2015 - Lançamento está próximo
Visual Studio 2015 - Lançamento está próximo
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Devops architecture
Devops architectureDevops architecture
Devops architecture
 
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
 
Scaling continuous delivery @ GeeCon 2014
Scaling continuous delivery @ GeeCon 2014Scaling continuous delivery @ GeeCon 2014
Scaling continuous delivery @ GeeCon 2014
 
Jenkins Introduction
Jenkins IntroductionJenkins Introduction
Jenkins Introduction
 

More from XebiaLabs

More from XebiaLabs (20)

Metrics That Matter: How to Measure Digital Transformation Success
Metrics That Matter: How to Measure Digital Transformation SuccessMetrics That Matter: How to Measure Digital Transformation Success
Metrics That Matter: How to Measure Digital Transformation Success
 
Infrastructure as Code in Large Scale Organizations
Infrastructure as Code in Large Scale OrganizationsInfrastructure as Code in Large Scale Organizations
Infrastructure as Code in Large Scale Organizations
 
Accelerate Your Digital Transformation: How to Achieve Business Agility with ...
Accelerate Your Digital Transformation: How to Achieve Business Agility with ...Accelerate Your Digital Transformation: How to Achieve Business Agility with ...
Accelerate Your Digital Transformation: How to Achieve Business Agility with ...
 
Don't Let Technology Slow Down Your Digital Transformation
Don't Let Technology Slow Down Your Digital Transformation Don't Let Technology Slow Down Your Digital Transformation
Don't Let Technology Slow Down Your Digital Transformation
 
Deliver More Customer Value with Value Stream Management
Deliver More Customer Value with Value Stream ManagementDeliver More Customer Value with Value Stream Management
Deliver More Customer Value with Value Stream Management
 
Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...
Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...
Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...
 
XebiaLabs: DevOps 2020 with Gene Kim
XebiaLabs: DevOps 2020 with Gene KimXebiaLabs: DevOps 2020 with Gene Kim
XebiaLabs: DevOps 2020 with Gene Kim
 
From Chaos to Compliance: The New Digital Governance for DevOps
From Chaos to Compliance: The New Digital Governance for DevOpsFrom Chaos to Compliance: The New Digital Governance for DevOps
From Chaos to Compliance: The New Digital Governance for DevOps
 
Supercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps PlatformSupercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps Platform
 
Build a Bridge Between CI/CD and ITSM w/ Quint Technology
Build a Bridge Between CI/CD and ITSM w/ Quint TechnologyBuild a Bridge Between CI/CD and ITSM w/ Quint Technology
Build a Bridge Between CI/CD and ITSM w/ Quint Technology
 
Make Software Audit Nightmares a Thing of the Past
Make Software Audit Nightmares a Thing of the PastMake Software Audit Nightmares a Thing of the Past
Make Software Audit Nightmares a Thing of the Past
 
Is Your DevOps Ready for the Cloud?
Is Your DevOps Ready for the Cloud?Is Your DevOps Ready for the Cloud?
Is Your DevOps Ready for the Cloud?
 
Compliance und Sicherheit im Rahmen von Software-Deployments
Compliance und Sicherheit im Rahmen von Software-DeploymentsCompliance und Sicherheit im Rahmen von Software-Deployments
Compliance und Sicherheit im Rahmen von Software-Deployments
 
All Roads Lead to DevOps
All Roads Lead to DevOpsAll Roads Lead to DevOps
All Roads Lead to DevOps
 
Reaching Cloud Utopia: How to Create a Single Pipeline for Hybrid Deployments
Reaching Cloud Utopia: How to Create a Single Pipeline for Hybrid DeploymentsReaching Cloud Utopia: How to Create a Single Pipeline for Hybrid Deployments
Reaching Cloud Utopia: How to Create a Single Pipeline for Hybrid Deployments
 
Avoid Troubled Waters: Building a Bridge Between ServiceNow and CI/CD
Avoid Troubled Waters: Building a Bridge Between ServiceNow and CI/CDAvoid Troubled Waters: Building a Bridge Between ServiceNow and CI/CD
Avoid Troubled Waters: Building a Bridge Between ServiceNow and CI/CD
 
Shift Left and Automate: How to Bake Compliance and Security into Your Softwa...
Shift Left and Automate: How to Bake Compliance and Security into Your Softwa...Shift Left and Automate: How to Bake Compliance and Security into Your Softwa...
Shift Left and Automate: How to Bake Compliance and Security into Your Softwa...
 
2019 DevOps Predictions
2019 DevOps Predictions2019 DevOps Predictions
2019 DevOps Predictions
 
Building a Bridge Between CI/CD and ITSM
Building a Bridge Between CI/CD and ITSMBuilding a Bridge Between CI/CD and ITSM
Building a Bridge Between CI/CD and ITSM
 
DevOps Hits Adolescence – what’s next?
DevOps Hits Adolescence – what’s next?DevOps Hits Adolescence – what’s next?
DevOps Hits Adolescence – what’s next?
 

Recently uploaded

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
anilsa9823
 

Recently uploaded (20)

Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 

XebiaLabs @ Jenkins User Conference Boston 2014

  • 1. Jenkins User Conference Boston #jenkinsconf Building Your Continuous Delivery Toolkit T.j. Randall XebiaLabs xebialabs.com @xebialabs June 18, 2014 #jenkinsconf
  • 2. Jenkins User Conference Boston #jenkinsconf Why a discussion about “other tools” at a JUC conference? •  It's ok to think you may need additional tooling to solve your issue for everything that you need to do. •  Clearly the reason you expanded Jenkins in this area is that it's a great tool, and you can do anything with Jenkins! •  You’re hitting some challenges: –  Maybe you’ve built a solution, it's running in PROD, and you're having challenges maintaining it. –  Or, maybe you want more, and you can't take out what you’ve currently built because it solves some specific needs.
  • 3. Jenkins User Conference Boston #jenkinsconf What do we use? We love Jenkins ourselves and use it for our continuous integration needs •  Build Failure Analyzer –  Helps us to understand why builds are failing, especially when analying possible infrastructure issues. •  Matrix Reloaded Plugin –  Allows users to easily rebuild parts of an already built Matrix build.  •  Promoted Builds Plugin –  Distinguish good builds from bad builds by introducing the notion of 'promotion'.  •  Throttle Concurrent Builds Plugin –  For throttling the number of concurrent builds of a project running per node or globally.
  • 4. Jenkins User Conference Boston #jenkinsconf What do we see others use? I get the benefit to go to lots of different customers, in all kinds of verticals, and see how they are using Jenkins. •  Build Monitor Plugin –  Great for teams to publish build results on screens •  Swarm Plugin –  Enables slaves to auto-discover nearby Jenkins master and join it automatically, thereby forming an ad-hoc cluster. •  Shelve Project Plugin –  Lets you shelve projects so that they can easily be resurrected.  (delayed trashcan ;) •  Timestamper –  Adds timestamps to builds. Makes it easier to understand what is running slowing, or see that a job is stuck without activity.
  • 5. Jenkins User Conference Boston #jenkinsconf When do some people start to think about other tools When do you hit the edges of your CI tool? –  Security: authentication in DEV, QA & PROD from CI tool –  Reporting: providing necessary documentation for release    Jenkins has the luxury problem based on its success –  People have expanded technically, and are reaching limits (“everything is possible”)  –  Expanding into areas where they hit organizational problems
  • 6. Jenkins User Conference Boston #jenkinsconf The Onion of Continuous Delivery The onion is bigger than Jenkins - in each layer is more "pain” (but not necessarily in this order) Capacity / Slave Pool Pipelines Deployment Code Coverage Code Build Integration testing Onion represents technical challenges, as well as multiple parts of the organization –  Consumer audience not happy with how information is presented Release Management
  • 7. Jenkins User Conference Boston #jenkinsconf What do you need for Continuous Delivery? (as it relates to teams) Ever notice that our CD tooling is a lot like this?
  • 8. Jenkins User Conference Boston #jenkinsconf How do you "Productionalize" a Toolkit •  How do you include all of your teams in your continuous delivery tool set? How did your automation tools get chosen? •  Who maintains your automation tools? –  Upgrades? Compliance? •  Most organizations try to limit/avoid cross- team activities when choosing a tool.
  • 9. Jenkins User Conference Boston #jenkinsconf Outline for Continuous Delivery Tools Let’s take a look at five technical needs for continuous delivery as they relate to both tools and teams. –  Continuous Integration –  Deployment –  Scaling –  Test –  Release Management For the conversation, we’ll use five teams that you might come across as part of your application release process. –  DEV –  QA –  DBA –  Network Services –  Ops
  • 10. Jenkins User Conference Boston #jenkinsconf Continuous Integration (reality) Team What they currently have DEV CI tool that allows them to quickly build applications, as well as many other DEV teams normally drive this decision QA “CI tool? We don’t need no stinkin’ CI tool!” DBA “I don’t check SQL into a SCM.” Network Services “What’s a CI tool?” OPS “What’s a CI tool?” Business “What’s a CI tool?” VERY hard to answer “What Changed?”, “Why Changed?” and “How Changed?”
  • 11. Jenkins User Conference Boston #jenkinsconf Continuous Integration Team What they need DEV Same CI tool for all teams. Commits can document why a change was made. (not just “fixed variable assignment”) QA QA needs to understand the changes as the relate to request (enhancement, bug fix, etc.) DBA SQL scripts are code. Check them in. Network Services Scripts are code. Check them in. OPS Can use CI information for understanding parts of system that are changing. Business Visibility into the delivery of their changes
  • 12. Jenkins User Conference Boston #jenkinsconf Deployment (reality) Team What they currently have DEV Some tools, some custom scripting, some magic sauce QA “You’re not putting that tool in MY environment!” DBA “You can’t automated database deployments. Just call us when you’re ready.” Network Services “There’s a deployment going on? Why didn’t anyone tell us?!” OPS “Why are there seven tabs of instructions for one app?!” Business “Can someone please tell us when we can log in to test?” Different deployment tools and processes across environments
  • 13. Jenkins User Conference Boston #jenkinsconf Deployment Team What they need DEV Tooling that ensures consistent, fast deployments in environments. QA Deployments based on same process as DEV, with no manual steps. DBA Either SQL code is part of automated deployment, or notifications included in overall automation. Network Services Visibility into current and upcoming deployments OPS Same deployment process as earlier environments, with no manual steps Business Visibility into current and upcoming deployments, along with automated notifications.
  • 14. Jenkins User Conference Boston #jenkinsconf Scaling (some versions of reality) Team What they currently have DEV Scripting to instantiate needed environments QA Requests made to Network Services for infrastructure DBA “You can’t scale databases!” Network Services Service entity for creating, maintaining and granting access to infrastructure OPS “We’ve got our own environments to maintain” Business “What address do I put in the browser?” Difficulty creating, maintaining and accessing scaled infrastructure
  • 15. Jenkins User Conference Boston #jenkinsconf Scaling Team What they need DEV Infrastructure scaled as part of CI / deployment process QA Infrastructure scaled as part of deployment process DBA Hop in the pool! The water is great! Network Services Visibility / access to all infrastructure OPS Visibility / access to all infrastructure Business Clear information about infrastructure available for access
  • 16. Jenkins User Conference Boston #jenkinsconf Test (reality) Team What they currently have DEV CI tools provide a lot of functionality here. Tests not related to other groups (to help avoid duplication) QA Normally choose/maintain their own test tools. Tests are created based on conversations with DEV and business. QA is the first “integrated” environment. DBA “Testing? The database is up….” Network Services Normally choose/maintain their own tools, which are not accessible/used by other teams OPS Ad hoc reports of tests completed Business “We’ll do our own “smoke” (manual) testing, and track the results in a spreadsheet” Silos of information, as well as non-consistent testing across environments
  • 17. Jenkins User Conference Boston #jenkinsconf Test Team What they need DEV Test tool that gives quick results on each build. Same tests are available to other teams for their use QA Tooling that gives them much broader coverage/feedback, as well as testing in earlier environments. DBA Database needs to be tested also – not just load testing! Network Services Testing application as it relates to infrastructure in each environment OPS Tests that validate release is successful Business Feedback into all groups about testing requirements, so that more automated tests can be built
  • 18. Jenkins User Conference Boston #jenkinsconf Release Management (aka “Excel”) Team What they currently have DEV Some tooling (ex/ JIRA); E-mails sent to PM to relate what is being worked on QA Sources of information (e-mail, defect system, spreadsheets, etc.) to relate what is in QA / what is coming. DBA “Just tell us when to deploy your SQL.” Network Services “I’ve got my own releases to maintain – I can squeeze you in next Thursday.” OPS “Wednesday release meeting (kinda) tells me what to expect this week-end.” Business “When are my features getting delivered?!” Kludge, manual, broken communication for the most important thing!
  • 19. Jenkins User Conference Boston #jenkinsconf Release Management Team What they need DEV CI, deployment, scaling and testing information feeds into release management system QA Release management drives dates so that QA is part of overall release, not viewed as a bottleneck DBA Team actively participates in their portion(s) of the release process Network Services Included, but not necessarily actively involved, with application release OPS Easily access all information about all releases. Business Ability to access and participate in release process
  • 20. Jenkins User Conference Boston #jenkinsconf (not so) Clever closing… Did I mention I was a vendor?
  • 21. Jenkins User Conference Boston #jenkinsconf Thank You To Our Sponsors Platinum Gold Silver