Build Pipeline mit YAML Script zum erzeugen eines *.deb Archives mit Maven und jdeb für Debian auf Raspberry Pi mit GitLab

Build Pipeline mit YAML Script zum erzeugen eines *.deb Archives mit Maven für Debian auf Raspberry Pi.

Oder wie kann man ein *.deb Archive mit Maven Plugin erzeugen?
Oder wie verpackt man ein JAR in ein deb Archive, um es einfach auf einem Raspberr Pi zu installieren?
Oder wer braucht ein Template für das erzeugen von Maven Artefacten mit einer automatischen Pipeline in GitLab?
Oder wie validiere ich die Build-Scripte der Build-Pipeline?

Auf diese ua. Frage gibt dieser Blog-Artikel Auskunft.

Wir wollen eine Build-Pipeline mit mehreren Javaversionen, test und build bzw. deploy erstellen. Hier der Flow der Pipeline:

So sieht die Pipeline mit den drei Stages aus:

Ein YALM Script kann man leicht in GitLab validieren und testen.

Dazu einfach auch diesen Link im GitLab Projekt oben rechts klicken:

Es erscheint ein Validator Fenster, wo der Code leicht entwickelt und getestet werden kann:

So, jetzt erstellen wir die pom.xml um ein *.deb Archive für den Pi zu erhalten. Wir verwenden dazu da Plugin jdeb. Hier der relevante Auszug:

Wenn die Build-Pipeline durchgelaufen ist, kann das *.deb Archive von der GitLab Seite) geladen werden:

Dann fehlt noch die Konfigurationsdatei (control Datei) für das *.deb Archive

Weitere Details siehe im Beispiel Projekt (https://gitlab.com/IT-Berater/twkaffee.

Nach dem Download kann das artifacts.zip entpackt werden. Dort ist dann das *.deb Archive enthalten. Das dann auf den Pi kopieren und ein sudo dpkg -i twkaffee-0.0.1.deb ausführen:

Oder wenn man sich zuvor den Inhalt anschauen will, ein sudo dpkg-deb –contents twkaffee-0.0.1.deb

Will man alles wieder entfernen geht das einfach mit: sudo dpkg -r twkaffee Achtung, da nicht den Packagenamen mit Version angeben, sondern den Namen des Programm.