Hudson Installation & Configuration

Hudson installation , what is hudson , hudson installing on windows , hudson installing on centos , hudson installation steps , what is hudson?

  • What is Continuous Integration
  • Installing Hudson
  • Hudson introduction and features
  • Configuring Hudson
  • Creating and Organizing Jobs
  • Managing Builds
  • Managing Plugins
  • User authentication and authorization
  • Monitoring External Jobs


What is Continuous integration?

“Continuous integration is a software development practice where software development members integrate their work frequently; usually each person integrates at least daily – leading to multiple integrations per day.  Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible” without integration of build process development life cycle will not be easy, you can impossible.

SVN is an centralized repository development team submits the code on daily basis to centralized code repository system is called SVN server. SVN is the system which keep track of the files versioning

Hudson is very useful to generate development build automatically.

Without proper development life cycle, the development is not complete or difficult to maintain, Hudson is very effective open source tool in order to achieve robotic development build process.

Hudson delivers every functionality as plugin there are 300+ plugin for different functionality. 

Improve Code Quality and reduce integration problems

Decreases the Project Release time & enables Frequent Releases

Controls the Number of defects

Continuous Integration flow.











Installing Hudson?

Installing Hudson on Windows?

Download and install JDK from

SET Java environment Settings


Download the Hudson .war file from


Move downloaded .war file to D:\ or any desired location.

Installing without Application Server, in this case you no need to install separate application server like tomcat apache or Jboss or else you can run hudson independently   which by default starts on port 8080

If you wish to modify port number you can use below command with fallowing option. (–httpport=8181).


D:\>java -jar hudson-2.2.0.war (this run hudson on default i.e., 8080)
D:\>java -jar hudson-2.2.0.war[--httpPort=8181] (in case you wish to modify port number)


Installing in Application Server

Copy the hudson.war file to the webapps directory of App server (tomcat, Jboss or Weblogic)

Once the Hudson .war file is moved to application server in webapps folder location you can start application server.

Hudson Dashboard can be accessed from URL


If you’re running Hudson using application server you can access Hudson dashboard using below URL


Hudson Introduction and Features

HUDSON_HOME directory

When you run Hudson as particular user, .hudson folder will be created under user home directory.

Building / testing projects continuously (Fail-fast)

Streamline development process and speed up building and testing activities associated to development work flow.

Scheduled Builds

Build can be run on scheduled date and time using cron job functionality or SCM cron jobs which keep track of versioning.  Whenever files updated in SVN repository build run process starts automatically.


Viewing change sets

Viewing Build logs from browser

Notifying failure via Email /RSS

Junit/TestNG test reporting

Monitoring executions of externally – run jobs

300+ plugins


Configuration Hudson

System Configuration

All global settings can be done from system configuration,  Ant integration , SMTP settings  & Bugzilla integration.

User Authentication and Authorization

Authentication, allow access to hudson

External authentication like LDAP , Unix & Active Directory.

Authorization, setting permissions to user actions

Managing Plugins

Hudson delivers every functionality as a plug-ins , there are more 300 plug-ins .

Manage Nodes

Manage multiple hudson server for load balance / failover option in order to generate application development build

Prepare for shutdown

This is administrative task to stop build process for scheduled maintenance purpose or any technical up gradation. It will prevent any news build request.


Creating / Organizing Jobs

Creating a Freestyle Project/Job

Creating a Maven Project/Job

Monitor an external Job

Build multi-configuration project / Job


Managing Builds

Running Builds

Viewing Changes

Downloading Artifacts

Build Trends

Tagging Builds


Monitoring External Jobs

Hudson is useful for monitoring the non-interactive execution of processes such as

Background processes

c:\>set HUDSON_HOME=http://127.0.01:8080
 c:\>java -jar <hudson-dir>/WEB-INF/hudson-core-2.2.0.jar <jobname> <command>
EX: java -jar D:\hd\hudson-2.2.0\WEB-INF\lib\hudson-core-2.2.0.jar "external" cmd.exe /c dir

User authentication & Authorization

User’s authentication is nothing but allowing users to login to Hudson, authorization is nothing but assigning permissions.

Creating Users

Authenticating Users with LDAP

Setting permissions to user actions

Enabling Project level security

Hudson installation , what is hudson , hudson installing on windows , hudson installing on centos , hudson installation steps , what is hudson