Introduction to Jenkins
Last updated
Last updated
Jenkins is an open source automation tool written in Java programming language that allows continuous integration.
Jenkins builds and tests our software projects which continuously making it easier for developers to integrate changes to the project, and making it easier for users to obtain a fresh build.
It also allows us to continuously deliver our software by integrating with a large number of testing and deployment technologies.
Kohsuke Kawaguchi first developed Hudson in 2004 while working at Sun Microsystems. When Oracle acquired Sun Microsystems in 2010, there was a dispute between Oracle and the Hudson community with respect to the infrastructure used.
There was a call for votes to change the project name from Hudson to Jenkins, which was overwhelmingly approved by the Hudson community on January 29, 2011, thereby creating the first “Jenkins” project.
The main server of Jenkins is the Jenkins Master. It is a web dashboard which is nothing but powered from a war file. By default it runs on 8080 port. With the help of Dashboard, we can configure the jobs/projects but the build takes place in Nodes/Slave.
Jenkins slave is used to execute the build jobs dispatched by the master. We can configure a project to always run on a particular slave machine, or particular type of slave machine, or simple let the Jenkins to pick the next available slave/node.
Continuous Integration is a software development practice where code is continuously tested after a commit to ensure there are no bugs. The common practice is that whenever a code commit occurs, a build should be triggered.
Continuous Deployment is a software development process where code changes to an application are released automatically into the production environment.
Continuous delivery is a software development practice where a code change is built, tested, and then pushed to a non-production testing or staging environment but final deploy to production is made after approval.
Open source tool
Easy to install
Platform Independent
Support 1000+ plugins
Free of cost
Automates integration