Daniel Bornkessel innoQ Deutschland GmbH

TeamCity hat zu Recht viele Fans unter Entwicklern. Die Software skaliert gut mit der Projektgröße und dank der Erweiterbarkeit lassen sich nahezu alle Anforderungen erfüllen.

Thorsten Kamann innoQ Deutschland GmbH

Vor allem, wenn man andere Tools von Atlassian, wie JIRA oder Confluence, bereits im Einsatz hat, bietet sich Bamboo an.

Carsten Pelka innoQ Deutschland GmbH

Semaphore ist ein gelungenes Beispiel eines Cloud-basierten Continuous-Integration- und Delivery-Tools.

Können Sie diese Frage beantworten: „Wie lange dauert es in Ihrem Unternehmen, bis eine Änderung deployt ist, die nur aus einer Zeile geändertem Code besteht?“ Und ebenfalls die anschließende Frage: „Passiert dies auf einer wiederholbaren und zuverlässigen Basis?“ Wenn Ihnen die Beantwortung der beiden Fragen Kopfschmerzen bereitet, lohnt ein Blick auf diese fünf Systeme für die Implementierung von Continuous-Delivery-Pipelines.

Die beiden Fragen „Wie lange dauert es in Ihrem Unternehmen, bis eine Änderung deployt ist, die nur aus einer Zeile geändertem Code besteht?“ und „Passiert dies auf einer wiederholbaren und zuverlässigen Basis?“ stammen von Mary und Tom Poppendiek und sind die Leitfragen zu Continuous Delivery. In diesem Artikel wollen wir aber nicht über die Konzepte von Continuous Delivery schreiben, sondern über fünf Systeme für die Implementierung von Continuous-Delivery-Pipelines. Da wir uns im Cloud-Zeitalter befinden, schauen wir uns nicht nur Systeme an, die auf eigenen (Cloud-)Servern installiert werden können, sondern auch zwei Systeme, die nur als Cloud-Service angeboten werden.

Atlassian Bamboo: Ergänzung zu JIRA und Confluence

Das erste Continuous-Delivery-System, das wir uns ansehen wollen, ist Bamboo von der Firma Atlassian, die auch für die bekannten Tools JIRA, Confluence und HipChat verantwortlich sind. Bamboo ist ein kommerzielles Produkt, dessen Preisstaffelung unter gefunden werden kann. Neben der klassischen Installation auf den eigenen (Cloud-)Servern bietet Atlassian für seine gesamte Produktpalette eine Cloud-Lösung, für die man eine monatliche Abogebühr zahlen muss. Die Preisstaffelung dazu findet man ebenfalls unter. Auch wenn Bamboo ein kommerzielles Produkt ist, haben Sie als Lizenznehmer Zugriff auf die Sourcen.

Die Installation gestaltet sich denkbar einfach. Es kann ein Archiv von der Webseite geladen werden. Dieses wird entpackt und der Server gestartet. Ein webbasierter Assistent führt dann durch die nächsten Schritte. Vorweg etwas zur Benutzerverwaltung: Wer die Produkte von Atlassian kennt, weiß, dass man JIRA für die zentrale Benutzerverwaltung verwenden kann. Das funktioniert auch mit Bamboo. Benutzer und Gruppenzugehörigkeiten aus JIRA lassen sich in Bamboo ebenfalls verwenden.

Bamboo geht mit dem vollmundigen Versprechen „Continuous delivery from code to deployment“ an den Start. Das Featureset spricht dafür, dass dieses Versprechen eingehalten werden kann:

  • Trennung von Build und Deployment auf verschiedene Umgebungen
  • Unterstützung von Feature- und Story-Branches
  • Natives Staging-Konzept
  • Integration mit JIRA und HipChat

In Bamboo nennen sich die einzelnen Jobs Build-Pläne. Der erste Schritt ist es einen solchen anzulegen. Build-Pläne werden in Projekten gruppiert. Ein Projekt lässt sich im gleichen Schritt mit anlegen. Innerhalb eines Build-Plans gibt man das Code-Repository an und konfiguriert die benötigten Tasks. Ein Task ist eine Aufgabe, die erledigt werden soll, wie Compile oder Test. Ist dieser Schritt abgeschlossen, hat man die erste Stage schon konfiguriert. Man kann den Plan direkt ausführen und live dabei zusehen, was im Einzelnen passiert. Schlägt ein Test fehl, kann man aus der Fehlermeldung direkt einen Bug in JIRA einstellen.

Den vollständigen Artikel lesen Sie in der Ausgabe:

Java Magazin 9.16 - "Entwickler an die Macht!"

Alle Infos zum Heft
254471Continuous-Delivery: Deployen auf Enterprise-Ebene
X
- Gib Deinen Standort ein -
- or -