Hudson is a discontinued
continuous integration (CI) tool written in
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
, which runs in a
servlet container
A web container (also known as a servlet container;
and compare "webcontainer"
) is the component of a web server that interacts with Jakarta Servlets. A web container is responsible for managing the lifecycle of servlets, mapping a URL to a pa ...
such as
Apache Tomcat
Apache Tomcat (called "Tomcat" for short) is a free and open-source implementation of the Jakarta Servlet, Jakarta Expression Language, and WebSocket technologies. It provides a "pure Java" HTTP web server environment in which Java code can also ...
or the
GlassFish
GlassFish is an open-source Jakarta EE platform application server project started by Sun Microsystems, then sponsored by Oracle Corporation, and now living at the Eclipse Foundation and supported by Payara, Oracle and Red Hat. The supported v ...
application server. It supports
SCM tools including
CVS,
Subversion
Subversion () refers to a process by which the values and principles of a system in place are contradicted or reversed in an attempt to transform the established social order and its structures of power, authority, hierarchy, and social norms. Sub ...
,
Git
Git () is a distributed version control system: tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data in ...
,
Perforce
Perforce, legally Perforce Software, Inc., is an American developer of software used for developing and running applications, including version control software, web-based repository management, developer collaboration, application lifecycle mana ...
,
Clearcase
Rational ClearCase is a family of computer software tools that supports software configuration management (SCM) of source code and other software development assets. It also supports design-data management of electronic design artifacts, thus enab ...
and
RTC, and can execute
Apache Ant
Apache Ant is a software tool for automating software build processes which originated from the Apache Tomcat project in early 2000 as a replacement for the Make build tool of Unix. It is similar to Make, but is implemented using the Java languag ...
and
Apache Maven
Maven is a build automation tool used primarily for Java projects. Maven can also be used to build and manage projects written in C#, Ruby, Scala, and other languages. The Maven project is hosted by the Apache Software Foundation, where it was ...
based projects, as well as arbitrary shell scripts and Windows batch commands. The primary developer of Hudson was
Kohsuke Kawaguchi
is a computer programmer who is best known as the creator of the Jenkins software project. While working at Sun Microsystems, he was the primary developer of Hudson project. He is also the recipient of the 2011 Google-O'Reilly Open Source A ...
, who worked for
Sun Microsystems
Sun Microsystems, Inc. (Sun for short) was an American technology company that sold computers, computer components, software, and information technology services and created the Java programming language, the Solaris operating system, ZFS, the ...
at the time. Released under the
MIT License
The MIT License is a permissive free software license originating at the Massachusetts Institute of Technology (MIT) in the late 1980s. As a permissive license, it puts only very limited restriction on reuse and has, therefore, high license comp ...
, Hudson is
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
.
Builds can be started by various means, including scheduling via a
cron
The cron command-line utility is a job scheduler on Unix-like operating systems. Users who set up and maintain software environments use cron to schedule jobs (commands or shell scripts), also known as cron jobs, to run periodically at fixed ti ...
-like mechanism, building when other builds have completed, and by requesting a specific build URL.
Hudson became a popular alternative to
CruiseControl
In software development, CruiseControl is a Java-based framework for a continuous build process. It includes, but is not limited to, plugins for email notification, Ant, and various source control tools. A web interface is provided to view the ...
and other open-source build servers in 2008.
[
] At
JavaOne
__NOTOC__
JavaOne is an annual conference first organized in 1996 by Sun Microsystems to discuss Java technologies, primarily among Java developers. It was held in San Francisco, California, typically running from a Monday to Thursday in summer ...
conference in May 2008, it was the winner of Duke's Choice Award in the Developer Solutions category.
When Oracle bought Sun, it declared its intention to trademark the Hudson name, and development began on a commercial version. It was decided by the majority of the development community, including Kawaguchi, to continue the project under the name
Jenkins in early 2011. Oracle maintained that Hudson was continuing development and that Jenkins was a fork; the Jenkins developers considered Hudson to be the fork.
Interest in Hudson collapsed thereafter. Eventually Oracle donated the remaining Hudson project assets to the
Eclipse Foundation
The Eclipse Foundation AISBL is an independent, Europe-based not-for-profit corporation that acts as a steward of the Eclipse open source software development community, with legal jurisdiction in the European Union. It is an organization suppo ...
at the end of 2012.
Having been replaced by Jenkins, Hudson is no longer maintained and was announced as obsolete in February 2017.
Plugins
Hudson is extensible through a plugin architecture, and many plugins have been made publicly available which extend it far beyond purely being a build tool for Java projects. Plugins are available for integrating Hudson with most version control systems and bug databases. Many build tools are supported via their respective plugins. Plugins can also change the way Hudson looks or add new functionality.
Builds can generate test reports in various formats (
JUnit
JUnit is a unit testing framework for the Java programming language. JUnit has been important in the development of test-driven development, and is one of a family of unit testing frameworks which is collectively known as xUnit that originated ...
is supported out of the box, others via plugins) and Hudson can display the reports and generate trends and render them in the GUI.
Hudson–Jenkins split
In November 2010, an issue arose in the Hudson community with respect to the infrastructure used, which grew to encompass questions over Oracle's stewardship and perceived control of the project.
Negotiations were held between the principal project contributors and Oracle; although there were many areas of agreement, a key sticking point was the control of the name "Hudson" itself, which Oracle claimed, and for which it submitted a trademark registration in early December 2010 (granted on October 25, 2011).
As a result, on January 11, 2011, a proposal was made to change the project name from "Hudson" to "Jenkins".
The proposal was overwhelmingly approved by those that voted on January 29, 2011, creating the
Jenkins project.
On February 1, 2011, Oracle indicated that it, in partnership with others in the community, intended to continue development of Hudson.
Move to Eclipse Foundation
On May 3, 2011, the
Eclipse Foundation
The Eclipse Foundation AISBL is an independent, Europe-based not-for-profit corporation that acts as a steward of the Eclipse open source software development community, with legal jurisdiction in the European Union. It is an organization suppo ...
in conjunction with the key Hudson committers,
Oracle
An oracle is a person or agency considered to provide wise and insightful counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. As such, it is a form of divination.
Description
The word '' ...
, Sonatype and other community supporters, put forward a formal proposal for the transfer of Hudson, including the core code and problematic trademarks, to the
Eclipse Foundation
The Eclipse Foundation AISBL is an independent, Europe-based not-for-profit corporation that acts as a steward of the Eclipse open source software development community, with legal jurisdiction in the European Union. It is an organization suppo ...
.
Hudson's founder Kohsuke Kawaguchi saw the Oracle move as validating Jenkins. "When we were talking with Oracle to find a middle ground, they made it very clear that they have no intention of giving up the trademark control. But with this move, they clearly acknowledge that Oracle couldn't keep up with the Jenkins project." On January 23, 2013, Eclipse announced the inclusion of Hudson 3 in the Eclipse Foundation.
See also
*
Continuous integration software
References
{{DEFAULTSORT:Hudson (Software)
Compiling tools
Continuous integration
Free software programmed in Java (programming language)
Java development tools
Software using the Eclipse license