Book Image

Hudson 3 Essentials

By : Lloyd H. Meinholz
Book Image

Hudson 3 Essentials

By: Lloyd H. Meinholz

Overview of this book

Continuous integration (CI) with automated test execution has been widely adopted in recent years. The concept behind CI has changed how companies look at Build Management, Release Management, Deployment Automation, and Test Orchestration. Hudson is a CI solution that provides executives, business managers, software developers, and architects with a better sense of the development progress and code quality of projects throughout their development life cycle.A fast-paced and hands-on introduction to the key features of Hudson 3. You will be introduced to tools that can be used to improve the quality of software development projects. You will also learn how to install and secure Hudson in a variety of IT environments. Staring with a brief introduction to Hudson and how it helps many IT organizations deliver high quality software, Hudson 3 Essentials will show you how Hudson can be installed and deployed in various environments. You will also be guided through the different methods of securing your Hudson installation. Moving on from the basics, you will be introduced to several important Hudson plugins and learn how to extend its functionality by developing your own plugins. You will be shown how Hudson can be used to build different types of applications and how it can deploy a web application to an application server. Finally, you will discover how Hudson can be used to perform automated testing on software applications, and how to generate reports that describe the results.
Table of Contents (15 chapters)
Hudson 3 Essentials
About the Author
About the Reviewers

Creating a Hudson plugin

In this section, we will create a sample Hudson plugin. In order to create a Hudson plugin, we will use the Apache Maven project. Maven is a build tool that is commonly used by Java projects. This example will use Maven Version 3.1.0, which was the latest available version when this book was being written. Other versions of Maven should also work.

Hudson uses Jelly for creating views. Jelly is an XML-based scripting and processing engine. To find out more about Jelly, the project page is located at

You do not need to download or install Jelly, but understanding how Jelly works will be necessary when writing more sophisticated plugins.

Downloading and installing Apache Maven

The Apache Maven distribution can be downloaded at Download the distribution that is appropriate for your platform, set the MAVEN_HOME environment variable, and append ${MAVEN_HOME} /bin (or %MAVEN_HOME%\bin) to...