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.

Journée DevOps : De l'intégration continue au déploiement continu avec Jenkins

2,364 views

Published on

Vous n'avez pas pu assister à la journée DevOps by Xebia ? Voici la présentation de Cyrille Le Clerc (Cloudbees) et Geoffroy Warrin (Xebia) : "De l'intégration continue au déploiement continu avec Jenkins"

Published in: Software, Technology
  • Be the first to comment

Journée DevOps : De l'intégration continue au déploiement continu avec Jenkins

  1. 1. ©2014 CloudBees, Inc. All Rights Reserved From CI to CD with Jenkins Cyrille  Le  Clerc,  Product  Management,  CloudBees   Geoffroy  Warin,  Xebia  
  2. 2. ©2014 CloudBees, Inc. All Rights Reserved /me Cyrille Le Clerc   @cyrilleleclerc   Open  Source   CTO   DevOps,  Infra  as  Code,   ConEnuous  Delivery   Product  Manager  
  3. 3. ©2014 CloudBees, Inc. All Rights Reserved /me Geoffroy Warin   @geowarin   Développeur   @geowarin   CraHsmanship  
  4. 4. ©2014 CloudBees, Inc. All Rights Reserved /you Dev? Ops? CI? Maven? CD?
  5. 5. ©2014 CloudBees, Inc. All Rights Reserved Agenda •  Concepts:  CI,  Jenkins  and  CD   •  New  roles  for  Jenkins   – Cross  team   – Deployment   – Workflow   •  Great  power,  great  responsibiliEes  
  6. 6. ©2014 CloudBees, Inc. All Rights Reserved Concepts Continuous Integration
  7. 7. ©2014 CloudBees, Inc. All Rights Reserved Continuous Integration •  PracEce  of  SoHware  Engineering   •  Introduced  by  eXtreme  Programming   •  Prevent  the  “IntegraEon  Hell”   •  IteraEve  
  8. 8. ©2014 CloudBees, Inc. All Rights Reserved /you What is Continuous Integration?
  9. 9. ©2014 CloudBees, Inc. All Rights Reserved Continuous Integration Principles •  Source  code  repository   •  Automated  build   •  Self  tesEng  build   •  Commit  to  the  baseline   every  day   •  Build  every  commit   •  Everybody  can  see  the   results  of  the  build   •  Latest  deliverable  easy   to  download   •  Fast  build   Wikipedia  
  10. 10. ©2014 CloudBees, Inc. All Rights Reserved Jenkins
  11. 11. ©2014 CloudBees, Inc. All Rights Reserved CloudBees & Jenkins •  Premier  provider  of  Jenkins   services  and  support   •  Java  PaaS   •  CEO:  Sacha  Labourey   •  CTO:  Kohsuke  Kawaguchi    
  12. 12. ©2014 CloudBees, Inc. All Rights Reserved Meet Jenkins… •  #1  ConEnuous  IntegraEon  and   ConEnuous  Deployment  server   •  Java  web  applicaEon      “java  –jar  jenkins.war”   •  MIT-­‐licensed,  8  years  old   •  500+  releases   jenkins-ci.org
  13. 13. ©2014 CloudBees, Inc. All Rights Reserved Source:  2012  Jenkins  Survey    
  14. 14. ©2014 CloudBees, Inc. All Rights Reserved #1 Continuous Integration Tool in the Market 14,2%   21,8%   15,7%   50,4%   28,3%   16,0%   32,2%   16,0%   32,2%   48,2%   30,8%   2,3%   6,0%   5,1%   11,6%   7,1%   10,1%   20,1%   15,3%   29,8%   50,8%   42,3%   4,5%   6,1%   6,2%   6,5%   8,0%   9,7%   10,9%   12,7%   16,7%   35,3%   38,3%   41,3%   Gradle   Other  (specify)   CMake   PDE  Build   Custom/in-­‐house   Tycho   Sonatype  Nexus   Hudson   Make   Jenkins   Ant   Maven   What  build  and  release  management  products  do  you  typically  use?  (Select  all  that  apply.)   2013   2012   2011   2010  
  15. 15. ©2014 CloudBees, Inc. All Rights Reserved Massive Adoption •  61,000+  installaEons  around  the  world;  +60%  in  last  year   •  700+  plugins  by  500  contributors   •  Huge  community  
  16. 16. ©2014 CloudBees, Inc. All Rights Reserved Continuous Delivery Visualizations are a courtesy of Nhan Ngo, Spotify Available on countinuousdelivery.com under Creative license
  17. 17. ©2014 CloudBees, Inc. All Rights Reserved Reliable Software Releases through Build, Test, and Deployment Automation    
  18. 18. ©2014 CloudBees, Inc. All Rights Reserved Continuous Delivery    
  19. 19. ©2014 CloudBees, Inc. All Rights Reserved Feedback    
  20. 20. ©2014 CloudBees, Inc. All Rights Reserved Continuous Delivery – Martin Fowler     ü  Your software is deployable throughout its lifecycle ü  Prioritize deployable software over new features ü  Fast, automated feedback on the product readiness ü  Push-button deployments of any version of the software to any environment on demand Contact  :     Benoit Moussaud   Technical Director Southern Europe  
  21. 21. ©2014 CloudBees, Inc. All Rights Reserved Continuous Integration Steps Con@nuous  Delivery   Source Code Quality Analysis Unit Tests Binaries
  22. 22. ©2014 CloudBees, Inc. All Rights Reserved DEV DEV OPS QA Continuous Delivery Steps Con@nuous  Delivery   Source Code Quality Analysis Unit Tests Binaries Perfs Environment Func Test Environment UAT Environment Production Environment GO LIVE! Release! Staging Environment
  23. 23. ©2014 CloudBees, Inc. All Rights Reserved Jenkins: Hub of Continuous Delivery •  Connect  the  dots   •  It  is  the  process  
  24. 24. ©2014 CloudBees, Inc. All Rights Reserved New Roles for Jenkins •  Cross  team  plaiorm   •  Deployment  automaEon   –  App,  dataset  …  environment  provisioning   •  Test  automaEon:  load  test,  acceptance  test  …   •  Release  management   •  Workflow   Jenkins  as  an  ApplicaEon  Lifecycle  Management  plaiorm  
  25. 25. ©2014 CloudBees, Inc. All Rights Reserved Cross Team Platform •  Not  only  used  by  DEV  but  also  QA  and  OPS   •  Various  profiles  and  skills   •  Mission  CriEcal  
  26. 26. ©2014 CloudBees, Inc. All Rights Reserved Deployment Automation •  Same  tools  and   automaEons  on  all  the   environments   xxx Environment xxx Environment •  Deploy  app,  dataset  …   •  Plugins  ecosystem  
  27. 27. ©2014 CloudBees, Inc. All Rights Reserved Test Automation •  Powered  by  Jenkins  ecosystem   •  Requires  full  environment  setup  (app,  dataset)  
  28. 28. ©2014 CloudBees, Inc. All Rights Reserved Brian Marick
  29. 29. ©2014 CloudBees, Inc. All Rights Reserved Release Management •  Not  only  “mvn release:prepare release:perform”   •  Includes  QA  validaEon,  Staging  …   •  “Jenkins'  Maven  job  type  considered  evil”  S.  Connolly    
  30. 30. ©2014 CloudBees, Inc. All Rights Reserved Workflow Nightly Build Unit Tests Perfs Tests Selenium Tests Deploy to UAT Sonar Analysis
  31. 31. ©2014 CloudBees, Inc. All Rights Reserved Workflow Choreograph  acEviEes  that  are  …   •  complex   •  long-­‐running   •  not  sequenEal   •  pausable   •  retryable  
  32. 32. ©2014 CloudBees, Inc. All Rights Reserved Workflow Today   •  Build  Flow  Plugin   •  Build  Pipeline  Plugin   •  Build  Delivery  Pipeline  
  33. 33. ©2014 CloudBees, Inc. All Rights Reserved Workflow
  34. 34. ©2014 CloudBees, Inc. All Rights Reserved Jenkins Workflow Plugin •  Engine  is  Open  Source   •  Should  become  a  de-­‐facto  standard  for  CD   •  Groovy  DSL   •  1  single  job  to  replace  mulEple  atomic  jobs   •  Intended  for  graphical  visualizaEon  and  value-­‐ added  extensions   •  SomeEmes  in  2014  
  35. 35. ©2014 CloudBees, Inc. All Rights Reserved Great power, great responsibilities Cross  team  collaboraEon  plaiorm:   •  High  Availability  and  SLAs   •  Security  
  36. 36. ©2014 CloudBees, Inc. All Rights Reserved High Availability and SLAs •  Jumbo  Jenkins  masters  are  fragile   –  MulEple  medium  sized  Jenkins  masters   •  Careful  version  upgrades   –  TesEng  environment  +  Jenkins  &  plugins  version  control   •  Support   •  It’s  not  an  open  bar,  security   Jenkins  OperaEons   Center  (JOC)   Enterprise  Update   Center  +  JOC     Professional  support  
  37. 37. ©2014 CloudBees, Inc. All Rights Reserved Security •  AuthenEcaEon   •  Audit   •  Role  Base  Access  Control   Jenkins  OperaEons   Center  (JOC)   Jenkins  Enterprise  by   CloudBees  
  38. 38. ©2014 CloudBees, Inc. All Rights Reserved Continuous Delivery is •  People   •  Process   •  Tools  
  39. 39. ©2014 CloudBees, Inc. All Rights Reserved

×