![Page 1: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/1.jpg)
Introduction to Continuous Integration with Jenkins
![Page 2: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/2.jpg)
Agenda
• What is Continuous Integration?
• Why Jenkins?
• Use Jenkins on a Java project
![Page 3: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/3.jpg)
WHAT IS CONTINUOUS INTEGRATION ?
Treat integration as a non-event
![Page 4: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/4.jpg)
Before CI
• Integration was a long and unpredictable process
• Take more than several months for a project developed in a couple of years
![Page 5: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/5.jpg)
![Page 6: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/6.jpg)
Origins
![Page 7: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/7.jpg)
CI by Example
Mainline
![Page 8: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/8.jpg)
CI by Example
Mainline
Working Copy
Checkout
![Page 9: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/9.jpg)
CI by Example
Working Copy
Clean
Compile
TestPackage
Verify
![Page 10: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/10.jpg)
CI by Example
Mainline
Working Copy
Commit
![Page 11: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/11.jpg)
CI by Example
Mainline
Working Copy Working Copy
Commit
![Page 12: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/12.jpg)
CI by Example
Mainline
Working Copy
Commit
![Page 13: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/13.jpg)
CI by Example
Mainline
Working Copy
Update
![Page 14: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/14.jpg)
CI by Example
Working Copy
Clean
Compile
TestPackage
Verify
![Page 15: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/15.jpg)
CI by Example
Mainline
Working Copy CI Server
Commit
![Page 16: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/16.jpg)
CI by Example
Mainline
Working Copy CI Server
Checkout or Update
![Page 17: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/17.jpg)
CI by Example
CI Server
Clean
Compile
TestPackage
Verify
![Page 18: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/18.jpg)
CI by Example
CI Server
Clean
Compile
TestPackage
Verify
![Page 19: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/19.jpg)
![Page 20: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/20.jpg)
Questions ?
![Page 21: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/21.jpg)
WHY JENKINS ?To serve you
![Page 22: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/22.jpg)
Jenkins Project
• Open-source CI server
• Easy to install and use– jenkins.war– Or the OS-specific packages– Configure everything from the browser
• Extensible– 400+ plugins by the community– Easy to develop its own plugins
![Page 23: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/23.jpg)
Jenkins Project
• Jenkins was originally Hudson– First release in February 2005
• In January 2011, Hudson become Jenkins– Hudson was a trademark of Sun and now of Oracle
![Page 24: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/24.jpg)
Who use Jenkins ?
![Page 25: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/25.jpg)
Who use Jenkins ?
Jenkins; 768
Hudson; 515
Bamboo; 178
CruiseCon-trol; 168
TeamCity; 96 QuickBuild; 7
Number of Jobs on Dice.com
![Page 26: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/26.jpg)
USE JENKINS ON JAVA
PROJECTS
Some usage examples
![Page 27: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/27.jpg)
Demonstration
![Page 28: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/28.jpg)
Questions ?
![Page 29: Introduction to Continuous Integration with Jenkins](https://reader035.vdocument.in/reader035/viewer/2022081400/554bc1b7b4c90530298b5182/html5/thumbnails/29.jpg)
More resources
• The most famous article on the subject :– http://www.martinfowler.com/articles/
continuousIntegration.html
• More information about XP :– http://www.extremeprogramming.org/
• An introduction in video of Jenkins by its creator :– http://vimeo.com/35678536
• http://jenkins-ci.org/