Jenkins (Software)

Jenkins ist ein erweiterbares, webbasiertes Software-System zur kontinuierlichen Integration von Software-Komponenten zu einem Anwendungsprogramm. Es wird als Fork der Software Hudson von Sun, heute Oracle, betrachtet.

Geschichte

Jenkins wurde in erster Linie von Kohsuke Kawaguchi, einem Mitarbeiter von Sun Microsystems, unter dem Namen Hudson entwickelt. Kawaguchi verließ das Unternehmen, nachdem es von Oracle Ende Januar 2010 übernommen worden war.[4] Kawaguchi behielt die Leitung bei Hudson und arbeitete nach eigenen Angaben auf freiberuflicher Basis weiter bei Oracle. Da Oracle die Namensrechte an Hudson hielt und den Namen als Marke eintragen ließ,[5] wurde das Projekt schließlich in Jenkins umbenannt.[6] Der Name Jenkins wurde gewählt, da die Entwickler der Meinung waren, dass Jenkins im Englischen genauso wie Hudson mit dem Beruf des Butlers assoziiert wird.[7] Da Oracle Hudson ebenfalls weiterentwickelte, kann von einem Fork („Abspaltung“) der Softwareentwicklung gesprochen werden.

Hudson gewann 2008 einen Duke’s Choice Award[8] in der Kategorie „Developer Solutions“. Im Januar 2014 wurde Kawaguchi der Chief Technology Officer von CloudBees.[9][10] CloudBees verließ im August 2010 den sogenannten „Stealth-Mode“ als Startup[11] und Kohsuke Kawaguchi gibt an, dort seit November 2010 dauerhaft beschäftigt zu sein. Damit haben sowohl Hudson als auch Jenkins ein unterstützendes Unternehmen, das Support und Fortentwicklung anbietet, und werden beide als Open-Source-Projekte in der Verwaltung gemeinnütziger Organisationen geführt: Hudson bei der Eclipse Foundation[12] und Jenkins bei der Software in the Public Interest.

2016 wurde die Weiterentwicklung von Hudson zugunsten von Jenkins eingestellt.[13][14]

Programmeigenschaften

Das Programm ist in der Programmiersprache Java geschrieben und läuft in beliebigen EJB-Containern. Es wird zusammen mit der minimalen Servlet-Middleware Winstone ausgeliefert, sodass Jenkins sofort auf Application-Servern nach der Jakarta-EE-Spezifikation lauffähig ist und es zusätzlich keines Servlet-Containers, wie z. B. Tomcat, bedarf. Unterstützt werden verschiedene Build-Tools wie Apache Ant, Maven oder Gradle, Versionsverwaltungssysteme wie CVS, Subversion oder Git, automatische Testverfahren („test tools“) wie JUnit oder Emma. Durch verschiedene Zusatzmodule („Plugins“) können auch andere Compiler gesteuert werden, sodass neben Java- auch PHP-, Ruby- oder .Net-Framework-basierte Projekte verwaltet werden können. Neben CruiseControl ist Jenkins eines der am häufigsten eingesetzten Werkzeuge zur kontinuierlichen Integration.

Jenkins verfügt über eine REST-basierte Programmierschnittstelle zur Steuerung durch andere Programme. So ist z. B. die Steuerung von „Xtreme-Feedback-Geräten“ möglich, die die Koordination in XP-Arbeitsgruppen vereinfacht.

Lizenz

Die Software steht unter der MIT-Lizenz.[15] Die verwendeten Icon-Grafiken stammen aus dem Tango Desktop Project und stehen unter der Lizenz Creative Commons Attribution Share-Alike.

Auszeichnungen

  • DevOps Dozen 2017[16]
  • DevOps Dozen 2016[16]
  • Bossie Awards 2014[16]
  • Geek Choice Award 2014[16]

Literatur

Einzelnachweise

  1. jenkins-ci.361315.n4.nabble.com. (abgerufen am 10. Dezember 2017).
  2. Release 2.477. 17. September 2024 (abgerufen am 22. September 2024).
  3. License. (englisch, abgerufen am 28. Juli 2018).
  4. Alexander Neumann: Hudson-Chefentwickler verlässt Oracle. Heise.de, 7. April 2010, abgerufen am 4. August 2018 (deutsch).
  5. Auskunft zur Unionsmarkennummer 009482902 für HUDSON im Register des Deutschen Patent- und Markenamtes (DPMA)
  6. Andrew Bayer: Rename Vote Results. 29. Januar 2011, abgerufen am 4. August 2018 (englisch).
  7. Andrew Bayer: Hudson's future. jenkins.io, 11. Januar 2011, abgerufen am 4. August 2018 (englisch).
  8. Duke's Choice Awards Spotlights 2008's Most Innovative Java Technology Applications. Business Wire, 6. Mai 2008, abgerufen am 4. August 2018 (englisch).
  9. People on the Move. Boston Business Journal, 17. Januar 2014, abgerufen am 4. August 2018 (englisch).
  10. Heidi Gilmore: Meet the New CTO Bee - Kohsuke Kawaguchi. CloudBees.com, 21. Januar 2014, abgerufen am 4. August 2018 (englisch).
  11. Heidi Gilmore: Welcome to CloudBees. CloudBees.com, 26. August 2010, abgerufen am 4. August 2018 (englisch).
  12. Hudson @ Eclipse Foundation. Abgerufen am 4. August 2018 (englisch).
  13. index : org.eclipse.hudson.core.git. log. 5. Mai 2016, archiviert vom Original am 11. August 2017; abgerufen am 20. März 2024 (englisch).
  14. Frederic Gurr: About Jenkins. 8. Februar 2017, abgerufen am 11. August 2017 (englisch): „Since Hudson is not maintained anymore, Jenkins is the replacement for it. They share a common ancestry, but have diverged in the past.“
  15. License. Abgerufen am 4. August 2018 (englisch).
  16. a b c d Awards. Abgerufen am 31. Dezember 2018.