Install Jenkins – Continuous Integration Tool

Before we talk about install jenkins, let us understand about what is jenkins first

What is Jenkins?

Jenkins is a Continuous Integration server. (Kind of advanced task scheduler). Basically Continuous Integration is the practice of running your tests on a non-developer machine automatically every-time someone pushes new code into the source repository.

Jenkins can be standalone (Using Jenkins.war file) or hosted (Install as a windows service).

  1. Install Jenkins – standalone client installation using Jenkins.war –

Jenkins Installation:

Prerequisite – 1. Java JDK installed. 2. Tomcat server is configure.

Step01:

Download the jenkins.war file from Jenkins Homepage.  URL:   https://jenkins.io/download/

Open Command Prompt.

Change directory to path where Jenkins.war is present.

Step02:

From this file you can start Jenkins directly via the command line with below code –

java -jar jenkins*.war.

Refer below screen shot.

 

 

 

When you do this process first time, it will take some time, some processes will be running in cmd.

Once you see below message, then Jenkins installation is complete

If you installed Jenkins locally, you find it running under the following URL: http://localhost:8080/

Access the installed Jenkins via URL – http://localhost:8080/

install jenkins

 

 

 

 

 

 

 

2. Install Jenkins – Hosted / Windows as a service

This is very simple to install jenkins as a windows service. Once you have launched jenkins which is installed by using above mentioned steps, Just launch it.
Now Go to Manage plugins, There you can see option as “Install as windows service”. Click on it.
Now, Select your installation directory and click on install.
Once installation is complete, you will see below window.
Once Jenkins is restarted, just go to services in your computer so that you can see that jenkins is started.
Now, next time onwards, you need to install jenkins every time from command prompt. You can enable or disable this from services window, as shown in above image.
Hope this helps.

What is Continuous Integration (CI) ?

Continuous Integration –

           Continuous Integration is the process which “run your project’s Code after someone change the code to the repository”, It also notifies all involved team if the build fails.

continuous-integration-CI-www.automationtalks.com

          Every time when somebody from the team change the code into the repository, a server (can be a script) check those commits and does a build of your code.
          A broken build should always be fixed immediately. A good CI process will help the team to move fast, with cleaner code and with a high level of confidence in the work they are doing.
An example:
Suppose developer A and B are both working on new features concurrently in modules X and Y, and both these modules depend on a third module Z. In order to complete their features both developers must make changes to module Z.

         Now, earlier both the developers are working separately by not committing their changes to the source control. Over a time, each of them would have copy of module Z which has very different code from each other. Now integrating both developers code with existing one will be a tough challenge.

The practice of continuous integration attempts to alleviate the cost of this integration step by having both developers commit to the main line frequently instead of leaving their changes in isolation, and also having both developers pull recent changes from the main line just as frequently. The effect of this practice is that a divergence in their shared dependency is found as soon as possible. This is beneficial as the sum effort to fix the individual conflicts is less than the effort to fix all conflicts at a later point in the future.

          Various Continuous integration tools used in market are Jenkins, TeamCity, Bamboo, Buildbot, TravisCI, Strider etc.