Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Jumping from Continuous Integration to Continuous Delivery with Jenkins Enterprise


Published on

Slides from 09/12 Webinar by Andrew Phillips (Xebia Labs) and Mark Prichard (CloudBees)

Published in: Technology
  • Be the first to comment

Jumping from Continuous Integration to Continuous Delivery with Jenkins Enterprise

  1. 1. Jumping from Continuous Integration toContinuous Delivery with Jenkins EnterpriseAndrew Phillips, XebiaLabsMark Prichard, CloudBeesSeptember 12, 2012 @CloudBees @XebiaLabs
  2. 2. Today‟s Presenters Mark Prichard, CloudBees Senior Director, Product Management Andrew Phillips, XebiaLabs VP, Product Management 2
  3. 3. Using GoToWebinarQuestions?Submit via the controlpanel at any timeduring the presentation. 3
  4. 4. Today‟s Agenda• What is Jenkins and Jenkins Enterprise?• The Challenges of CI• CI Best Practices• Jumping to CD• CD Best Practices• How to get started 4
  5. 5. Have you met Jenkins?• #1 OSS CI server – Written in Java• About 7 years old• Easy to install/use• Extensible via 550+ plugins• Widely adopted – 43K+ installations• Jenkins Enterprise value-adds 5
  6. 6. What is Jenkins Enterprise by CloudBees? Jenkins Enterprise is Jenkins LTS + Enterprise Features, backed with Professional Support JenkinsCommunity Community Jenkins LTS Plugins Jenkins Enterprise by Professional Enterprise Support Plugins CloudBees CloudBees ©2012 CloudBees, Inc. All 6
  7. 7. Jenkins Enterprise Plugins Large Optimized Security Installations Utilization • Folders • Roles-based • Auto-scaling • Templates Access Control for VMWare • Backup • Wikitext installations • High Descriptions • Throttled Build Availability • Secure Copy Execution • Custom Update • Even Load Centers Strategy • Validated • Skip Next Build Merges • Fast Archiving ©2011 CloudBees, Inc. All 7
  8. 8. Why Jenkins for Enterprise Development? • To let developers focus on developing – Leave building, packaging, testing, distributing to a computer – Make the right thing the easiest thing • Many, well-adopted development plugins including mobile – Safety in numbers • “Distributed builds” for scaling with workload • “Matrix project” for easy cross device testing 8
  9. 9. Demo: Building a “Social” Chess Server • The basics: record games, moves • Next steps: notifications, time keeping • Going further: competition, research • Chess client apps handle actual play • Server doesn‟t need to know the rules • Just for fun: 9
  10. 10. Fun App – but „Real‟ Java Development • Built using Eclipse, Maven, JUnit, JAX-RS, JAX-B, gson … • Git repository, Jenkins build/test and app deployment all running on AWS using CloudBees PaaS • Free to develop: enterprise-grade runtime services 10
  11. 11. Testing, Testing, Testing• Suppose I add some new killer feature• What do I need to test? – Do all components build correctly? – Do the unit tests pass? – Did the interfaces change? – Have I affected the UI behavior?• I need this all to happen continuously and automatically – end-to-end testing 11
  12. 12. Jenkins and Agile CI Best Practices Continuous Monitor Continuous Deployment Repository Integration The Key to Agile and Lean Development Stage Build Code • Better quality products Application • Faster delivery Test Code • Scale teams 12
  13. 13. Continuous Delivery with Jenkins• Define pipeline scope and “expansion plan”• Collect all application components (incl. configuration resources etc.)• Build environment-independent packages• Provide automated tests• Define automatable release triggers & checkpoints 13
  14. 14. CD in the Enterprise• Same pipeline setup across middleware and OS types• Same pipeline setup in private/hybrid cloud and PaaS environments• On-demand environment provisioning• Release Management integration• End-to-end “paper trail” 14
  15. 15. CD “Getting Started” Questions• What needs to be in our deployment packages? Can we retrieve these components automatically?• Can we deploy the same components to all environments, automatically? Can we keep environment information out of our builds?• What are the stages in our pipeline? How do they map to jobs? Who owns/has access to these jobs?• What triggers for/checkpoints between pipeline stages do I need? Can I automate triggering/checkpoint validation?• What happens when a pipeline stage fails? 15
  16. 16. Demo: Whats Coming Up• Two variants of the chess demo application• Same build/deploy/test pipeline in Jenkins• 1x JBoss & MySQL• 1x Tomcat & MongoDB• Deployit Release Dashboard 16
  17. 17. Use Deployit & Jenkins to...• Build complete and environment-independent packages• Deploy to enterprise middleware environments out-of-the-box• Keep environment specifics and sensitive information out of your builds• Provide automated rollback on error• Integrate release management controls & validation for auditing and compliance 17
  18. 18. Sign Up with CloudBees• It‟s totally free for developers• One click and we‟ll start you off with Jenkins, Java, Scala/Lift, MySQL and more 18
  19. 19. Learn More in San Francisco! Jenkins User Conference, San Francisco Sept. 30, 2012 Register to Attend : Code: JUC-2012SF ($100 Discount)Mark Prichard, Sr Director Product Mgmt, CloudBees twitter: @mqprichard email: mprichard@cloudbees.comFor more info: www.cloudbees.comPhone: +1.781.404.5100 19
  20. 20. Try Jenkins & Deployit• Get Deployit and the Jenkins Deployit plugin• Start continuous delivery to your enterprise middleware• See for information about your free trial 20
  21. 21. Q&A Mark Prichard CloudBees Andrew Phillips XebiaLabs 21
  22. 22. Thank You!Mark Prichard, Sr Director Product Mgmt, CloudBeestwitter: @mqprichardemail: mprichard@cloudbees.comAndrew Phillips, VP Product Mgmt, XebiaLabstwitter: @XebiaLabsemail: 22