Login
Newsletter
Di, 25. November 2014, 14:00

make-test-release: Ein Werkzeug für Ubuntu-Paketbetreuer

Mit den Skripten des Pakets »make-test-release« lässt sich das Bauen von Paketen weitgehend automatisieren.

Während ich ein neues Paket für Ubuntu erstellt habe, schrieb ich mir ein paar kleine Hilfsskripte mit dem Namen »make-test-release«.

Diese Kollektion besteht aus den Skripten

  • make-test-release
  • switch-chroot-precise
  • switch-chroot-utopic
  • switch-chroot-trusty

Was passiert?

Zuerst führt man eines der »switch-chroot«-Skripte aus, welche die gewünschte Ubuntu-Version in der chroot installieren. Die gewählte Version wird in der eigenen Datei /etc/make-test-release/make-test-release.cfg vermerkt.

Als nächstes bereitet man ein Recipe-File vor. Dazu kann etwas wie dieses vorbereitet werden:

# bzr-builder format 0.3 deb-version {debupstream}-0~{revno:packaging}+{time}
lp:daps
merge packaging lp:~sascha-manns-h/daps/daps-ubuntu

Dies wird anschließend abgespeichert als MeinProgramm.recipe.

Ist dies vorbereitet, genügt ein Aufruf von make-test-release im aktuellen Verzeichnis.

Das Programm versucht die .recipe-Datei selbstständig zu finden, andernfalls fragt es danach. Nach dem Start legt das Programm zwei Verzeichnisse an: logs und working-dir. Falls im aktuellen Verzeichnis bereits die beiden Verzeichnisse existieren, löscht es den Inhalt des working-dir. Ist dies abgeschlossen, startet es bzr dailydeb. In diesem Schritt wird auch die *.dsc-Datei erstellt.

Auf diese greift der nächste Schritt zu. Er benutzt die soeben erstellte *.dsc-Datei mit pbuilder build. Geht alles gut, dann gibt make-test-release die Namen der neu gebauten Pakete aus, die sich in /var/cache/pbuilder/results befinden. Mittels spezieller Hook-Skripte lässt sich der Bauprozess weiter an die Bedürfnisse anpassen.

Dies alles ermöglicht eine Emulation eines Launchpad-Baus auf dem lokalen Rechner. Mittels make-test-release kann ein Packager künftig mit nur einem Befehl einen Test-Build vornehmen.

Das Launchpad-Projekt befindet sich hier. Fehlermeldungen und Feature-Wünsche sind dort immer willkommen.

Wie bekomme ich make-test-release?

sudo add-apt-repository ppa:sascha-manns-h/make-test-release
sudo apt-get update
sudo apt-get install make-test-release

Die aktuelle Version ist 1.3 (Otto Lindenbrook).

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten