3. Agenda
Why do we need Continuous Integration ?
What is Continuous Integration?
What is Continuous Deployment?
CI tools?
What is Jenkins?
Jenkins Distributed Architecture
Hands on
4. • Developers have to wait till
complete software is developed
and then test results are out.
• If test fails, then locating and
fixing the bugs was very difficult.
They need check entire codebase
for that.
• Lack of continuous feedback
Before Continuation Integration
5. • With every commit to
codebase, an auto build is
trigger that deploy on test
server.
• If bugs occur it notifies the
developer with who
perform that commit.
• Increase in frequency of
releases.
• Continuous feedback
Continuous Integration to Rescue
7. • Continuous delivery/deployment.
• Every commit thatpassedabuildcouldbedeploy to
production.
• Automationdeploy.
What is Continuous Deployment?
8. Nightly builds can be thought of as a predecessor to Continuous Integration.
Now is the correct time to understand how Jenkins achieves Continuous Integration.
Case Study : Nokia
13. Single Jenkins Server Limitation
• Sometimes you might need several different environments to test your
builds.
• If larger and heavier projects get built on a regular basis then a single
Jenkins server cannot simply handle the entire load.
15. Jenkins Master
Your main Jenkins server is the Master.
• Scheduling build jobs.
• Dispatching builds to the slaves for the actual execution.
• Monitor the slaves (possibly taking them online and offline as required).
• Recording and presenting the build results.
• A Master instance of Jenkins can also execute build jobs directly.
Jenkins Slave
A Slave is a Java executable that runs on a remote machine.
• It hears requests from the Jenkins Master instance.
• Slaves can run on a variety of operating systems.
• The job of a Slave is to do as they are told to, which involves executing build jobs
dispatched by the Master.
• You can configure a project to always run on a particular Slave machine, or a particular
type of Slave machine, or simply let Jenkins pick the next available Slave.
19. Thanks for listening! Questions?
Thanks for listening! Questions?
Umesh Kumhar
DevOps Engineer
@ Saama Technologies Inc.
@umeshkumhar
write2umeshkumhar@gmail.com
9680208222