Saturday 30 November 2013

Hudson Plugin for Eclipse

If you are using Hudson as continuous integration server and you might feel lazy about accessing Hudson explicitly to check the build status or checking Hudson build status mails, there is an option to monitor Hudson build and perform build activities in Eclipse IDE itself. This post describes about installing, configuring and using the Hudson in Eclipse IDE.

Installing Hudson Plugin in Eclipse
Use below URL To install the Hudson Eclipse plugin using Eclipse Update Manager:

In case you face issue while installing plugin using update manager you can directly drop dk.contix.eclipse.hudson_x.x.x.jar  in Eclipse's plugins directory and restart IDE.

Configuring Hudson 
Once the installation is done, configure the Hudson URL from Preferences > Hudson to connect to Hudson server. Also remember to Check URL whether URL is valid or not. Your Hudson server must be running at this point of time.


How to Use Hudson in Eclipse?
In eclipse, go to Windows > Show View > Hudson. You will see below tab is added in your Eclipse. Also, When the plugin is running, a health icon is displayed at the bottom of the Eclipse window. The icon is red on build failure and green on success.  Please note that due to limitations in Eclipse, the Hudson view must be active before the icon is displayed.


In case build is failed, you will get below pop-up in your eclipse IDE. 


You can also perform below activities using this Eclipse Hudson plugin.For this, select any project listed in Hudson tab and right click.
  1. Schedule New Build
  2. View Console Output
  3. Open Hudson in Browser


If you want to  access the Hudson admin console in your Eclipse,  go to 'Hudson' tab and double click on your project.


Limitations 
If your Hudson server requires authentication and authorization for access, then you can not see the list of jobs in Eclipse. Because Eclipse Hudson plugin does not facilitates interface to provide Hudson web credentials. To overcome this limitation, you have to give read permission to Anonymous user for jobs in Hudson which need to be displayed in Eclipse. 

Common Issues
  •  Issue in configuring Hudson base URL which is SSL enabled
Solution: This issue is due to missing required certificates. Refer below links to generate the certificate. Once the certificate is generated you can copy those into $JAVA_HOME/lib/security for the JRE that eclipse is using for its run time. It will trust that cert and then you can access configured HTTPS URL successfully.

  • Once your certificate issue is resolved then you may face below issue
             java.security.cert.CertificateException: No subject alternative names present

            Solution: Configure HTTPS URL using DNS rather giving IP address.
             For example: Use this https://mybox.com/hudson instead of  https://XX.XX.XX.XX/hudson 
  • While refreshing build status you get below pop-up 

            Solution: Ensure that your job's name in Hudson does not contain white spaces.

References
Below are the references for more detail about Hudson Eclipse plugin.