Jenkins for One

2,961 views
2,814 views

Published on

Mark Waite's Ignite presentation to DOSUG on how Jenkins can be so easy to set up and use for continuous integration.

Published in: Education

Jenkins for One

  1. 1. Personal  Continuous  Integration   Mark  Waite  –  DOSUG/DJUG   May  11,  2011  
  2. 2. Con$nuous  Integra$on    Continuous  –  happening  all  the  time    Integration  –  combine  components  into  a  new  thing    Continuous  Integration     Change  the  code   Change     Build  it     Test  it   Report   Build     Report  Results   Test  
  3. 3. Jenkins  for  Con$nuous  Integra$on    Jenkins  –  open  source  continuous  integration  server    Jenkins  (http://jenkins-­‐ci.org/)  is     Easy  to  install     Easy  to  use     Multi-­‐technology     Multi-­‐platform     Widely  used     Extensible     Free  
  4. 4. How  Easy  Is  It?    Less  than  5  minutes  to     Download  Jenkins     Install  Jenkins     Configure  my  job     Build  my  code     Run  my  tests    Watch  the  screencast     http://j.mp/jenkins-­‐in-­‐five-­‐minutes  
  5. 5. Jenkins  Knows  Your  Source    Version  Control  Systems     Accurev     Bazaar     BitKeeper     ClearCase     Darcs     Dimensions     Git     Harvest     MKS  Integrity     PVCS     StarTeam     Subversion     Team  Foundation  Server     Visual  SourceSafe  
  6. 6. Jenkins  Knows  Your  Build    Build  Tools     Ant     Maven     MSBuild     Make     Cmake     Scons     UNIX  Shell     Windows  batch     …  
  7. 7. Jenkins  Knows  Your  Tests    Test  Frameworks     Junit     Nunit     MSTest     TestNG     CppUnit     JSUnit     PHPUnit     Selenium     Fitnesse  
  8. 8. Jenkins  Knows  Your  Language    Jenkins  can  build  and  run     Java     C     Python     Ruby     Perl     PHP     Javascript     C#     …  
  9. 9. Jenkins  Improves  Your  Style    Static  Analysis     Checkstyle     CodeScanner     DRY     Crap4j     Findbugs     PMD     Fortify     Sonar     FXCop  
  10. 10. Jenkins  Improves  Your  Tests    Code  Coverage     Emma     Cobertura     Clover     GCC/GCOV     Coverage.py     …  
  11. 11. Jenkins  Fits  Your  Environment    Notification     Authorization     Twitter     Active  Directory     Campfire     LDAP     Google  Calendar     Virtual  Machines     IM     Amazon  EC2     IRC     VMWare     Lava  Lamp     VirtualBox     Sounds     Xen     Speak     Libvirt  
  12. 12. Jenkins:  Great  for  Teams    Build    Install    Configure    Test    Report  results  
  13. 13. But  Wait,  There’s  More…    Individuals  need  Jenkins     Free     Easy     Powerful  
  14. 14. Installing  Jenkins    Easy  to  install     Download  one  file     jenkins.war     Run  one  command     java  –jar  jenkins.war  
  15. 15. Installing  Jenkins    Easy  to  install     Use  your  package  manager     Windows  MSI     Debian/Ubuntu  apt     Red  Hat/CentOS  rpm     FreeBSD  pkg_add     Gentoo  emerge  
  16. 16. Using  Jenkins    Easy  to  use     Create  a  new  job     Build  now     See  results  
  17. 17. Using  Jenkins    Easy  to  use     Create  a  new  job     Build  now     See  results  
  18. 18. Using  Jenkins    Easy  to  use     Create  a  new  job     Build  now     See  results  
  19. 19. Using  Jenkins    Easy  to  use     Create  a  new  job     Build  now     See  results  
  20. 20. More  Power  –  Jenkins  Plugins    Jenkins  has  over  300  plugins     Software  configuration  management     Builders     Test  Frameworks     Virtual  Machine  Controllers     Notifiers     Static  Analyzers  

×