Jenkins (software)

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
Jenkins (software)
Jenkins logo with title.svg
Initial release 2 February 2011 (2011-02-02)[1]
Stable release 2.6 / 22 May 2016; 8 years ago (2016-05-22)
Written in Java
Operating system Cross-platform
Type Continuous integration
License MIT license
Website jenkins.io

Jenkins is an open source continuous integration tool written in Java. The project was forked from Hudson after a dispute with Oracle.

Jenkins provides continuous integration services for software development. It is a server-based system running in a servlet container such as Apache Tomcat. It supports SCM tools including AccuRev, CVS, Subversion, Git, Mercurial, Perforce, Clearcase and RTC, and can execute Apache Ant and Apache Maven based projects as well as arbitrary shell scripts and Windows batch commands. The primary developer of Jenkins is Kohsuke Kawaguchi.[2] Released under the MIT License, Jenkins is free software.[3]

Builds can be started by various means, including being triggered by commit in a version control system, by scheduling via a cron-like mechanism, by building when other builds have completed, and by requesting a specific build URL.

History

Jenkins was originally developed as the Hudson project. Hudson's creation started in summer of 2004 at Sun Microsystems. It was first released in java.net in Feb. 2005.[4]

Around 2007 Hudson became known as a better alternative to CruiseControl and other open-source build-servers.[2][5] At the JavaOne conference in May 2008 the software won the Duke's Choice Award in the Developer Solutions category.[6]

During November 2010, an issue arose in the Hudson community with respect to the infrastructure used, which grew to encompass questions over the stewardship and control by Oracle.[7] Negotiations between the principal project contributors and Oracle took place, and although there were many areas of agreement a key sticking point was the trademarked name "Hudson",[8] after Oracle claimed the right to the name and applied for a trademark in December 2010.[9] As a result, on January 11, 2011, a call for votes was made to change the project name from "Hudson" to "Jenkins".[10] The proposal was overwhelmingly approved by community vote on January 29, 2011, creating the Jenkins project.[11][12]

On February 1, 2011, Oracle said that they intended to continue development of Hudson, and considered Jenkins a fork rather than a rename.[13] Jenkins and Hudson therefore continue as two independent projects, each claiming the other is the fork. As of December 2013, the Jenkins organisation on GitHub had 567 project members and around 1,100 public repositories,[14] compared with Hudson's 32 project members and 17 public repositories.[15][original research?]

In 2011, creator Kohsuke Kawaguchi received a Google-O'Reilly Open Source Award for his work on the Hudson/Jenkins project. In 2014, Kawaguchi became the Chief Technology Officer for CloudBees.[16]

In April 20, 2016 version 2 was released.

Plugins

Plugins have been released for Jenkins that extend its use to projects written in languages other than Java.[17] Plugins are available for integrating Jenkins with most version control systems and big databases. Many build tools are supported via their respective plugins. Plugins can also change the way Jenkins looks or add new functionality.

Builds can generate test reports in various formats supported by plugins (JUnit support is currently bundled) and Jenkins can display the reports and generate trends and render them in the GUI.

Other frameworks

There are similar tools for other programming frameworks such as:

  • Buildbot — a Python system to automate the compile/test cycle to validate code changes.
  • tox — an automation tool providing packaging, testing and deployment of Python software.
  • Travis-CI — a distributed CI server which builds tests for open source projects for free.
  • Django-Jenkins — Django (Python) Web Framework integration with Jenkins, heavily contributed to by Montana Mendy.[18]

See continuous integration for more.

See also

References

  1. Jenkins 1.396 released, The first release of Jenkins is posted, Kohsuke Kawaguchi
  2. 2.0 2.1 Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Plugins - Jenkins
  18. django-jenkins

External links

  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.