daily grml builds – jeden Tag was Frisches
Pfuhhhh, das zieht ja größere Kreise als erwartet. Ok, dann verlier ich auch mal hier ein paar Worte dazu.
Eines unserer langfristigen Ziele bei grml war es seit jeher, dass wir unseren Buildprozess einmal vollautomatisch hinbekommen. Warum? Weil das viele Vorteile mit sich bringt, u.a.:
- der Truck Factor innerhalb des Teams wird niedrig gehalten
- das Hinzufügen von neuen Flavours (speziellen grml-Geschmacksrichtungen wie grml-small) wird vereinfacht, ebenso wie die Unterstützung von neuen Architekturen
- bessere Qualitätskontrolle und -sicherung
- Anwender können sich unabhängig von den Entwicklern und Devel- und Stable-Releases jeweils tagesaktuelle Versionen holen
Aja, ich hoffe den Artikel zum Thema Daily Builds von Joel Spolsky kennt meine Leserschaft schon. :)
In den letzten Wochen habe ich also an grml-live (dem Buildframework für grml, das auf FAI basiert) viel weiterentwickelt. Das Resultat sind die daily grml builds, die via daily.grml.org öffentlich zur Verfügung stehen. Mittlerweile können wir damit grml-small, grml-medium (ein sich in Arbeit befindlicher neuer grml-Flavour mit max. 200MB ISO-Größe – eine Mischung aus grml und grml-small also) und grml in jeweils 32Bit und 64Bit-Versionen bauen. Und zwar nicht nur auf Debian/unstable basierend, sondern auch mit der Basis Debian/stable. Ergibt in Summe also 12 ISOs die wir täglich bauen… lassen – und zwar vollautomatisch.
Die größte Herausforderung, die wir aktuell noch bewältigen müssen, ist das Tracking zwischen den einzelnen Builds. Welche Pakete lassen sich nicht installieren, welche Pakete sind in der Installed-Size signifikant größer geworden, welche sind deprecated und wie läuft die Arbeit eigentlich zwischen dem Freeze und Stable-Release ab? Die Konzepte sind schon großteils fertiggedacht, Teile der Implementierung sind ebenso vorhanden, jetzt heisst es nur noch das in der Praxis sauber durchzuziehen. 8-)