Bitbucket Server und Data Center: CDN-Support, Spiegelfarmen, Jenkins-Integration, optimierte Code Insights und mehr

Bitbucket ist die ausgereifte und funktionsreiche Git-Repository-Managementlösung von Atlassian. Kein anderes Atlassian-System wird mit einer solchen Frequenz weiterentwickelt wie dieses: Im Monatstakt versorgt der Hersteller Bitbucket Server und Data Center mit Optimierungen und neuen Funktionen. In diesem Beitrag stellen wir die wichtigsten Features, die mit den Versionen der letzten Zeit ausgeliefert worden sind, mal im Überblick vor. (Die neueste Iteration 6.10 ist übrigens ein Enterprise-Release.)

CDN-Unterstützung in Bitbucket Data Center

Die geographische Entfernung hat messbare Auswirkungen auf die Ladezeiten von Webseiten. Für produktive Entwicklungsteams, die verteilt arbeiten und vielleicht sogar über mehrere Zeitzonen verstreut sind, ist es deshalb wichtig, entsprechende Vorkehrungen zu treffen. Ein Content Delivery Network (CDN) kann helfen, verteilten Teams frustrierende Erlebnisse zu ersparen.

Das Feature CDNs für Data Center ermöglicht es, statische Assets wie JavaScript, CSS oder Fonts auf Edge-Servern vorzuhalten, die näher an den Usern residieren. Das Ergebnis sind deutlich kürzere Ladezeiten und ein produktiveres Team. Mehr Details gibt es in unserem dedizierten Blogpost zum Thema.

Spiegelfarmen für skalierbare CI/CD-Kapazitäten

Spiegelfarmen bilden die neue Evolutionsstufe des Smart-Mirroring-Features in Bitbucket Data Center und haben das Zeug, die Wartezeiten beim Ziehen und Kopieren von Repositories drastisch zu reduzieren. Eine Spiegelfarm ist ein Cluster aus Spiegelservern, die hinter einem Load Balancer laufen, um mehr CI-Kapazitäten zur Verfügung zu stellen und Hochverfügbarkeit zu schaffen. Nähere Infos dazu bietet ein separater Artikel zu Smart Mirroring und Spiegelfarmen.

Davon abgesehen hat Atlassian ein Update der Smart-Mirroring-Funktionen ausgeliefert, das die Fähigkeit von Spiegeln verbessert, Fehler zu erkennen zu beheben. Dieses neue Anti-Entropie-System verifiziert die Konsistenz eines Spiegels im Vergleich zum Primärserver alle drei Minuten. Damit wird die Stabilität der Spiegelserver nochmals verbessert.

Nahtlose Integration mit Jenkins

Mit einigen wenigen Schritten kann das Team einen kompletten CI-Workflow erstellen und Jenkins anweisen, Build-Feedback zurück an Bitbucket zu senden. Die Integration befähig Jenkins sogar zu Builds von Spiegelservern, sodass die Entwickler sich die jüngsten Verbesserungen im Hinblick auf Smart Mirroring zunutze machen können. Das Plugin unterstützt sowohl Pipeline- als auch Freestyle-Projekttypen und funktioniert mit Bitbucket Server 5.5 aufwärts.

Merge-Checks in Code Insights zur Gewährleistung der Code-Qualität

Mit Bitbucket 5.15 hat Atlassian seinerzeit das Feature Code Insights ausgeliefert, das es CI-Systemen und anderen Analysetools (wie beispielsweise Programmen zur statischen Code-Analyse, Testwerkzeugen oder Security-Scannern) erlaubt, Informationen zur Code-Qualität in Pull-Requests abzubilden. Dadurch werden die Entwickler in die Lage versetzt, Probleme in Sachen Code-Qualität direkt während des Code-Review-Prozesses zu erkennen und zu behandeln.

Code Insights ermöglicht es nun, Pull-Requests zu blocken, sodass sie nicht gemergt werden können, bis die entsprechenden Qualitätsanalysen von Code Insights den Anforderungen des Teams genügen. Wir können das Mergen blockieren, wenn kein Qualitätsbericht vorhanden ist, wenn die Qualitätsanalyse nicht bestanden wurde oder wenn es in den Diffs Hinweise auf einen bestimmten Schweregrad gibt.

Autor und Committer sehen

Bitbucket macht es jetzt noch einfacher zu erkennen, wer Autor und wer Committer ist. Wenn diese Aufgaben von unterschiedlichen Leuten bearbeitet wurden, zeigt Bitbucket im entsprechenden Commit beide Avatare. Diese Zusatzinformation kann in bestimmten Szenarien hilfreich sein – beispielsweise sind in einem Commit via cherry pick der Originalautor und der "cherrypickende" Entwickler zu sehen.

Verbesserte Dateisuche

Damit Entwickler ihre Suchabfragen im System präzisieren und die gewünschten Inhalte effizienter finden, hat Atlassian die Dateisuche in Bitbucket in zweifacher Hinsicht optimiert. Neu ist der Modifier path:. Damit lassen sich Suchen so eingrenzen, dass nur Dateien berücksichtig werden, die im Pfad oder Dateinamen einen bestimmten Terminus enthalten. Dabei können wir Wildcards nutzen. Das ist vor allem dann nützlich, wenn wir eine Suche über sehr viele Repos hinweg durchführen wollen.

Weiterhin gibt es eine Neuerung dahingehend, wie die Suchergebnisse priorisiert werden. Resultate, bei denen Pfad und Inhalt einer Datei übereinstimmen, werden ganz oben angezeigt. So finden Entwickler noch schneller, was sie brauchen.

Vorbereitung auf Bitbucket 7: Nicht unterstützte Betriebssysteme

Mit den letzten kleineren Bitbucket-Releases wirft auch schon die kommende Major-Version 7.0 ihre Schatten voraus. Bitbucket 7 wird nicht mehr auf nicht offiziell unterstützten Betriebssystemen laufen, denn dies hat es bisher nötig gemacht, von der Nutzung des Java Process Builders auf einen alternativen Ansatz auf Basis der nativen Betriebssystem-APIs umzuschalten.

Mit Bitbucket 7 wird es keine Änderungen hinsichtlich unterstützter Plattformen geben; stattdessen stärkt Atlassian schlicht die unterstützten Betriebssysteme. Damit geht sogar direkt ein verringerter Speicherverbrauch des Systems und ein zusätzlicher Performance-Gewinn einher. Weitere Infos hierzu hat Atlassian auf der Detailseite Supported Platforms zusammengestellt.

Git und Bitbucket effektiv nutzen? Wir sind Ihr Partner!

Möchten Sie mehr über Atlassians Git-Repository-Manager Bitbucket erfahren? Würden Sie die Lösung gerne unverbindlich testen? Oder suchen Sie Unterstützung bei der Transition zu Git? Wir sind Atlassian Platinum Solution Partner und helfen Ihnen bei allen Aspekten rund um die Einführung von Bitbucket Server oder Bitbucket Data Center: Evaluierung, Lizenzierung, Adaption, Optimierung.

Weiterführende Infos

Neue Enterprise-Features in Bitbucket für Git-Entwicklungsteams: Smart Mirroring, Git Large File Storage, Projekte
Ratenbegrenzung in Bitbucket Data Center: Selbstschutz vor Performance-Problemen
Smart Mirroring: CI/CD-Skalierung und verbesserte Geo-Performance mit Bitbucket Data Center
So funktioniert die Lizenzierung von Atlassian-Produkten