Download
hudson ci jenkins ci n.
Skip this Video
Loading SlideShow in 5 Seconds..
Hudson CI / Jenkins CI PowerPoint Presentation
Download Presentation
Hudson CI / Jenkins CI

Hudson CI / Jenkins CI

309 Views Download Presentation
Download Presentation

Hudson CI / Jenkins CI

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Hudson CI / Jenkins CI Continuous Integration Server

  2. Über mich • Stefan Scheumann • Bachelor Informatik • Hochschule Zittau / Görlitz • 6. Semester • Zur Zeit im Praktikum Stefan Scheumann

  3. Projekte bei Studenten • 2 Monate vor Abgabe Aufgabenaufteilung • 2 Wochen vor Ende Zusammenführen der Einzelteile • 2 Tage vor Schluss Fehler entdecken • 2 Stunden vor Abgabe Lösung finden • 2 Minuten vor Abgabe fertig werden • 2 Tage nach Abgabe entdecken, dass doch nicht alle Fehler beseitig wurden Stefan Scheumann

  4. Lösung • Alle Projektmitglieder arbeiten dauerhaft zusammen • Kleine Programmteile • In regelmäßigen Abständen zusammenführen des Codes • Testen des Codes • Ein funktionierendes Projekt abgeben • Continuous Integration Stefan Scheumann

  5. Hudson CI • Java-basierter CI-Server • Initiiert 2006/2007 von KohsukeKawaguchi • Open Source (MIT-Lizenz) • Ca. 17.000 Installationen • 1,5 Mio. LOC • 200+ Plugins • 150+ Beitragende Stefan Scheumann

  6. Vorteile • Gemeinsame Codebasis • Automatisierter Build • Selbsttestender Build • Häufige Integration • Schnelles und umfassendes Feedback • Automatisierte Berichte • Automatische Verteilung Stefan Scheumann

  7. Was ist Hudson nicht • Programmiersprache • Aber benutzt verschiedene Compiler • Build Werkzeug • Aber benutzt Maven und Ant • Versionskontrollsystem • Aber kann mit SVN, GIT und anderen umgehen • Code Analyse Tool • Aber benutzt diese und veröffentlicht die Ergebnisse • Kein Repository • Aber kann Artefakte ausbringen Stefan Scheumann

  8. Hudson aufsetzen • Herunterladen • Entpacken • Deployen (oder stand-alone Server starten) • Java und Build Tool angeben • Neues Projekt anlegen (Maven, Ant oder Sonderform) • Code Repository angeben • Loslegen  Stefan Scheumann

  9. Projekt Eigenschaften • Grundeigenschaften • Maven • Ant • Matrix Build • Repository • Build-Auslöser • Report Generierung • Veröffentlichen / weitere Build Prozesse Stefan Scheumann

  10. Hudson Plug-Ins • Mehr als 200 Plug-Ins vorhanden • Unterteilung • Benachrichtigung • Oberfläche • Benutzerverwaltung / Authentifizierung • Build-Auslöser • Post Build / Build Berichte / Veröffentlichen • Build Werkzeuge • Cluster Management / Slave Knoten • Externe Werkzeuge • Maven Tools Stefan Scheumann

  11. Vorteile • Dauerhaftes Rot-Grün-Schema • Wetterbericht • Dokumentation • Test + Testabdeckung • Code Analyse • Veröffentlichen von Artefakten • Verlaufsanzeige • FUN Stefan Scheumann

  12. Nachteile • Automatisiertes Build Skript benötigt • Hoher Speicherplatzverbrauch • Lange Buildzeiten => Lösung: Kleine Projekte mit Abhängigkeiten Stefan Scheumann

  13. Hudson vs. Jenkins • Trennung in Oracle und Open Source • Hudson weiterhin unter Oracle • Jenkins unter Open Source Community Stefan Scheumann

  14. Quellen • http://hudson-ci.org/ • http://jenkins-ci.org/ • http://de.wikipedia.org/wiki/Jenkins_%28Software%29 • Autor Simon West: Continuous Integration mit Hudson, dpunkt.verlag, 2011 • Gunther Popp: Konfigurationsmanagement mit Subversion, Ant und Maven, dpunkt, dpunkt.verlag, 2007 Stefan Scheumann

  15. Danke für Ihre Aufmerksamkeit … • Für weitere Fragen • Stefan Scheumann • Email: sistsche@stud.hs-zigr.de • Oder direkt im Anschluss Stefan Scheumann