Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden
+49 (0) 351/850 33-0

Continuous Integration und Deployment in der Cloud – wie Jira und Bitbucket zusammenarbeiten

Für Continuous Integration & Continuous Deployment stellt Atlassian eine App namens „Bitbucket Pipelines“ bereit, das für alle Bitbucket Cloud-Nutzer unmittelbar zur Verfügung steht.

Integration von Bitbucket in Jira Cloud

Atlassian bietet Anwendern an, Jira Cloud in Bitbucket Cloud zu integrieren. Somit können Entwickler direkt in Bitbucket Jira-Issues managen und müssen nicht ständig den Kontext zwischen zwei Anwendungen wechseln. Das vereinfacht die Arbeit der Entwickler und verbessert damit auch die Aktualität der Issues in Jira. Die Zuweisung von Commits zu Issues erfolgt über die Commit-Message. Befindet sich dort der Jira-Issuekey, so erkennt Bitbucket Cloud den Vorgang. Des Weiteren können auch direkt in Jira Branches für Issues angelegt werden und die jeweiligen Commits dieses Branches nachverfolgt werden.

 

Continuous Integration/Continuous Deployment – Automatisierung mit Bitbucket Pipelines

Für Continuous Integration und Continuous Deployment stellt Atlassian eine App namens „Bitbucket Pipelines“ bereit. Diese Erweiterung steht jedem Bitbucket Cloud-Nutzer unmittelbar zur Verfügung. Der Grundgedanke hinter Pipelines ist ein Gesamtprozess aus Checkout, Build, Test, Deployment und gegebenenfalls weiteren Schritten. Mit Bitbucket Pipelines kann dieser Build-Prozess mit jedem Commit angestoßen werden. Der Nutzer sieht den Build-Status eines jeden Commits direkt in Bitbucket ein. So kann die Integrität der Commits stets sichergestellt werden. Aber auch Nightly-Builds oder manuelle Builds und Deployments sind möglich.

Ansicht aller Commits; erkannte Jira-Issues sind im Message-Feld blau hervorgehoben

Die Funktionalität steht standardmäßig für eine Vielzahl an Programmiersprachen (u.a. Java, Python, NodeJS, …) zur Verfügung. Die Konfiguration von Bitbucket Pipelines findet in der bitbucket-pipelines.yml statt. Das Vorhandensein dieser Datei im Root-Verzeichnis eines Repositorys reicht für den Anstoß des Build-Prozess nach jedem Commit bereits aus. Weitere Informationen zu dieser Konfigurationsdatei sind hier zu finden.

Minimales Beispiel einer Pipeline-Konfiguration

In der obigen Abbildung ist ein minimales Beispiel einer solchen Konfigurationsdatei zu sehen. Es wird ein Docker-Container mit einem Apache Maven in der Version 3.3.9 genutzt. Nach einem Commit wird dann ein minimales Script aufgerufen, das mittels Maven den Code validiert und vorhandene Tests durchführt.

Die Pipelines werden in der Atlassian-Cloud in Docker Containern ausgeführt. Hierbei kommen Standardcontainer oder eigene Docker-Container zum Einsatz – je nach Konfiguration. Damit kann sehr einfach quasi jede beliebige Build-Umgebung hergestellt werden. Atlassian bietet in der kostenfreien Version der Bitbucket Cloud monatlich 50 Minuten Build-Zeit an. Diese kann durch kostenpflichtige Pakete entsprechend verlängert werden.

Ansicht aller Build-Prozesse mit jeweiligem Status

Zukünftig ist noch eine Build-Status Integration in Jira-Issues von Atlassian geplant. Dadurch könnte man den aktuellen Build-Status eines jeden Jira-Issues im Ticket mitverfolgen. Diese Funktionalität ist jetzt schon mit Bamboo Server im Zusammenspiel mit Jira möglich. Release dieses Features soll voraussichtlich Anfang 2018 stattfinden. Weiterführende Informationen sind im Ticket von Atlassian zu finden.

Mit Jira Cloud und Bitbucket Cloud inkl. der Bitbucket-Pipelines ist es sehr einfach möglich ohne Installation noch heute mit Continuous Integration zu starten und das System anschließend Schritt für Schritt weiter Richtung Test und Deployment auszubauen. Es bietet damit auch einen perfekten Start ins DevOps. Für alle Anwender, für die eine Cloud keine Option ist, bietet Atlassian die Continuous Integration/Continuous Deployment-Funktionen als Bitbucket Server und Bamboo auch als on-premise Lösung für das eigene Unternehmen an. Wir unterstützen selbstverständlich bei Einrichtung, Beratung und Installation der Anwendungen, damit auch Ihr Unternehmen die Vorteile von Continuous Integration und Deployment voll ausschöpfen kann.

Kommentar hinterlassen


Pin It on Pinterest