Login
Newsletter
Werbung

Sa, 12. September 2015, 10:46

Software::Entwicklung

Bazel: Neues Build-Tool von Google

Seit einigen Jahren nutzen Google-Entwickler intern ein eigenes Build-Tool, das sich für Software-Produkte beliebiger Größe und Art eignen soll. Dieses wird nun freigegeben. Letzte Woche wurde es in der ersten Betaversion veröffentlicht.

Mirko Lindner

Die Webseite von Bazel existiert mindestens seit dem Frühjahr, flog aber bisher unter dem Radar der meisten Entwickler. Zwei Gründe dafür dürften sein, dass Bazel sich noch in Entwicklung befindet und erst letzte Woche die Betaphase erreichte, und dass die Software erst nach und nach freigegeben wurde. Mittlerweile ist der Hauptteil von Bazel unter der Apache 2.0-Lizenz veröffentlicht. Es steht noch die Freigabe vieler Unittests und die vollständige IDE-Integration aus.

Man könnte meinen, dass es bereits mehr als genug freie Build-Tools gibt, von Make über CMake, Ant und Maven bis Gradle, um nur einige zu nennen. Bazel soll die besten Eigenschaften all dieser Werkzeuge in sich vereinen. Dabei weisen die Entwickler allerdings darauf hin, dass Bazel zunächst entstand, um die Bedürfnisse von Google optimal zu erfüllen, und nicht notwendigerweise für jeden geeignet ist.

Der Umfang der von Google entwickelten Software ist riesig, und der Code dafür liegt in einem einzigen, gewaltigen Repositorium. Bazel wurde spezifisch dafür entwickelt, in dieser Situation effizient zu arbeiten. Es soll automatisierte Tests und Veröffentlichungen besonders gut unterstützen, ebenso die verschiedensten Sprachen und Plattformen. Es kann auch Docker-Images, Android- und iOS-Apps und vieles mehr bauen.

Einige der Eigenschaften von Bazel sind hohe Geschwindigkeit bei der Abhängigkeitsanalyse, Skalierbarkeit, umfangreiche eingebaute Regeln sowie ein erweiterbares Regel-Framework namens Skylark, Korrektheit bei der Analyse, welche Dateien neu generiert werden müssen, und daraus resultierend zuverlässige inkrementelle Builds, generelle Zuverlässigkeit und Reproduzierbarkeit, weil Builds in einer Sandbox laufen und nur die explizit angegebenen Dateien verwendet werden.

Die Betaversion von Bazel ist als Binärpaket verfügbar, der Quellcode ist ebenfalls verfügbar und lagert auf Github. Google pflegt intern eine eigene Version von Bazel. Im Laufe der Zeit soll das Github-Repositorium das primäre werden, während Google nur noch seine Erweiterungen intern hält.

Derzeit kommen alle Bazel-Entwickler von Google, das Projekt will jedoch von Google unabhängig sein und heißt Mitarbeiter von überall her willkommen. Bis zur Freigabe von Bazel 1.0.0 sehen die Entwickler noch einen weiten Weg. Vor Mai 2016 ist mit Version 1.0.0 nicht zu rechnen.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung