The hudson plugins you can't live without

As a big fan of hudson-ci I would like to take a note of the most commonly used hudson plug-ins (at least by me) needed in order to maintain a good build environment.

This list was collected as part of my experience in the last couple of years. I am sure your may differ then mine mine :).

 

Setenv plugin

The The Setenv plugin lets you set environment variables for a job upon build execution. During migration from CruiseControl I found this plugin extremely useful, for I could provide the imported script the exact environment it had on the CC machine without the need to change a thing in the build's logic / parameters, this also applied to the following recommended plugin:

 

Parameterized Trigger plugin

The Parameterized Trigger plugin lets you add parameters to your build jobs that users enter when they trigger a build. This a very useful plugin for release or deployment automation, for example, where you want to enter the version number (or label) you want to release or deploy. The biggest feature of this plugin is the default value so even automatic / SCM triggers get a default value to execute silently.

 

cygwin logoCygpath plugin

The Cygpath Plugin for a *nix oriented guy as myself, this was a great help, all our "special" shell script do not have to be re-written when we are running builds on Windows nodes - and yest we have too ... :)

The Cygpath gave me the opportunity to share tools between linux and windows machines this gave us the ability to maintain one tool repository for all our slave regardless of their architecture.

And did I forget to say all you need it to enable this and automatically every batch executed on a windows slave will automatically use Cygwin ? from Cygpath wiki:

- You install Cygwin on all the Windows slaves

- Jobs on Hudson that assume Unix environment can now run on all the slaves (including Windows ones)

- In the system configuration, you use Unix paths for all your tools.

 

Promoted Builds plugin
Promotion
Definitely the #1 plugin on the list here - this plugin enables you to do almost anything you can do in a certain Job but run it as a promotion task - if you wish to promote you build to your QA team for testing, or if you want to tag it in SVN or Deploy your artifacts to a maven repository, this is the plugin you "cannot live without". Without this plugin you will need to configure a seperate job or Bach Task (see batch tasks plugin for more details) for every task you want to perform on your build - which makes managing hudson job a nightmare ...


Clover logoClover plugin

Clover is a non-free code coverage tool which is the commercial alternative to Cobertura Emma etc, the Hudson Clover plugin is an amazing add on which integrates Clover reports and Historical reports into the build flow, which I found extremely helpful. Try configuring Clover to generate historical reports and then publish them to some third-party web server for viewing - this has made Clover integration a breeze, the challenge is even bigger with a distributed build environment which Hudson & Clover plugin have overcome.

Clover in Job

If you don't have Clover, as mentioned above - the Cobertura and Emma plugins are great too which will also integrate with:

 


Sonar plugin

Although I am only "P.O.C ing" Sonar+Hudson+Clover, The Sonar plugin made it trivial to integrate hudson projects with Sonar. Sonar is a powerful open source code quality metrics reporting tool, which displays code quality metrics for multiple projects in a variety of ways on a centralized web location.

For Maven based builds you do not even need to change a line of code in order to get sonar to work which made this module a #2 on my "can't live without plugins".

 

Sectioned View plugin

Sectioned view gives you the ability to create a "Dashboard view" for your job(s) / project(s) - it is quite feature rich if you take a look at it's configuration and it is very simple to comprehend. A great example is taken from the plugins wiki page see:

Section view scrrenshot

 

Nested Views plugin

Nested views another View type which allows grouping job views into multiple levels instead of one big list of tabs - this is quite useful and the only disadvantage is you can have both a view and jobs in the same page it's either a nested view or a list of views - but I presume it will sure be included.

 

Sheleve Project plugin

If you ever wanted to Hide a jo you are working on and you also would like to prevent it from being triggered by mistake this is the plugin for you. I often find my self setting up a job and it becomes a work in progress so hiding it to a later time is a great help - this plugin does just that.

 

Bugzilla & Jira plugins (& there or others I presume)

Bugzilla logoWell the fact I need both in the same Hudson cluster and I can still have them work side by side was really important. In order for this plugin to serve you well your CM team has to some extra work on your SCM side, that done you got yourself a link directly into your bug tracking system - the latest versions, query Bugzilla & Jira and can display the Bug details.

 

 

Thank you for your interest!

We will contact you as soon as possible.

Send us a message

Oops, something went wrong
Please try again or contact us by email at info@tikalk.com