jenkins - cluedenver.orgcluedenver.org/presentations/jenkins.pdf · history 2 february 11, 2013 •...
TRANSCRIPT
![Page 1: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/1.jpg)
Jenkins
February 11, 2013
@ChrisHirsch Griz Bates
![Page 2: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/2.jpg)
History
February 11, 2013 2
• Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned” by Sun but they didn’t trademark the name • Once Oracle bought Sun, they claimed the name to Hudson • Community rallied and forked Hudson into Jenkins • Once that happened, the project took off and nobody has ever looked
back. • Don’t believe me? Google for Hudson and Google for Jenkins. • http://jenkins-ci.org/
![Page 3: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/3.jpg)
License
February 12, 2013 3
• MIT • http://opensource.org/licenses/MIT
– Open, permissive,
![Page 4: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/4.jpg)
Uses
February 11, 2013 4
• Continuous Build – Build your project on EACH CHECKIN • Continuous Testing – Run through unit tests on EACH CHECKIN • Continuous Release – Run through integration tests and possibly push
to production on EACH CHECKIN
![Page 5: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/5.jpg)
Continuous Integration
February 11, 2013 5
• Continuous integration (CI) is the practice, in software engineering, of merging all developer workspaces with a shared mainline several times a day.
• http://en.wikipedia.org/wiki/Continuous_integration
![Page 6: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/6.jpg)
Continuous Deployment
February 11, 2013 6
• http://en.wikipedia.org/wiki/Continuous_delivery
![Page 7: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/7.jpg)
Plugins
February 11, 2013 7
• http://wiki.jenkins-ci.org/display/JENKINS/Plugins • Must Have Plugins
– Chuck Norris – Beer Plugin – Emotional Jenkins Plugin – Lava Lamp – Leader Board – Sonar
![Page 8: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/8.jpg)
Reporting
February 11, 2013 8
• Graphs can show pretty much anything • Build Failures • Code Coverage • LOC Change (Sonar)
![Page 9: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/9.jpg)
I’m sold! Now What?
February 11, 2013 9
• Need to install • Bring up the UI • Create your project and you’re off!
![Page 10: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/10.jpg)
Installation
February 12, 2013 10
/etc/yum.repos.d/jenkins.repo [jenkins] name=Jenkins baseurl=http://pkg.jenkins-ci.org/redhat gpgcheck=1 • yum install jenkins • Updates are done though the GUI after that
![Page 11: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/11.jpg)
Integration with Mercurial
February 12, 2013 11
[web] description = Web Services contact = A Developer <[email protected]> [hooks] pretxnchangegroup.PhpSyntax = /home/local/hg/hooks/phplint changegroup.jenkins = /home/local/hg/hooks/build-ci -b -u http://jenkins.mcafeesaas.com:8080 multiPlatformBuilder project=webService
![Page 12: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/12.jpg)
Creating a Project
February 12, 2013 12
• Can be GUI driven or CLI/API • Choose your CM tool • Choose your build trigger • http://wiki.jenkins-ci.org/display/JENKINS/Building+a+software+project
![Page 13: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/13.jpg)
Jenkins API
February 12, 2013 13
• Retrieve Information from Jenkins • Trigger a new build • Create/Copy Jobs • http://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API
![Page 14: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/14.jpg)
Integrating your New Pi
February 12, 2013 14
• Grab your Pi’s and lets get crackin’ • Lava Lamp Notifier • Stop Light Notifier • Literally 100’s more
![Page 15: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/15.jpg)
Let’s show it!
February 11, 2013 15
![Page 16: Jenkins - cluedenver.orgcluedenver.org/presentations/Jenkins.pdf · History 2 February 11, 2013 • Hudson was a popular alternative to CruiseControl in 2008 • Hudson was “owned”](https://reader033.vdocuments.mx/reader033/viewer/2022060600/6054131b4845ca4eae117e57/html5/thumbnails/16.jpg)
Questions?
February 11, 2013 16