UCS@school Paket selber erstellen / bauen

Hallo zusammen,

ich habe gestern versucht UCS@school (https://github.com/univention/ucs-school) zu builden. Stehe hier aber erstmal auf dem Schlauch.

Sehe ich das richtig, dass UCS@school in verschiedene Sub-Komponenten unterteilt ist (ucs-school-lib, ucs-school-umc-exam), die jeweils einzeln mit Hilfe von dpkg-buildpackage gebuildet werden müssen?

Wie builde ich am besten UCS@school, damit ich es auf einem UCS installieren kann?

Gibt es hierfür ein zugängliches Script, dass die einzlenen Komponenten buildet?

Grüße
Oli

Ich habe gerade How-to: Build UCS packages via Docker container gefunden.

Heißt das, ich kann UCS@school einfach nach debbuilder mounten und es werden die Packages gebuildet?

  1. Das ganze Git Repo auf einem UCS System auschecken.
  2. Jedes Verzeichnis, das ein debian Unterverzeichnis hat, ist ein Source-Package. Dort rein gehen und ausführen:
  3. apt build-dep . -y && dpkg-buildpackage -us -uc -b
  4. Die binary Debian Pakete landen in .., d.h. im Git root.

@troeder Vielen Dank!

Ich habe nochmal ein paar Fragen:

  1. Sollte ich lieber einen Tag z.B. release-5.0v2 ausschecken oder die 5.0 Branch?

  2. Im App-Center ist bereits die Version 5.0v3 diese konnte ich nicht auf Github finden.

  3. Ich habe anschließend für die gebauten Pakete eine Repo eingerichtet und diese auf dem Primary Node hinzugefügt und anschließend installiert. Das hat wunderbar funktioniert.

Beim Einrichten eines Schulservers (Replica Nodes) gibt es im Join-Script die Fehlermeldung:

ucsschool-join-hook: [ERROR] UCS@school does not seem to be installed on Cannot get app version of UCS@school on Primary Directory Node!

Sollte ich hier einfach ucs-school manuell als installiert markieren oder bekomme ich dann Probleme mit der Version?
univention-app register --do-it ucsschool

Ich würde 5.0 auschecken - das ist unser main. Aktuell ist dort nicht viel Aktivität und noch nicht zu veröffentlichender Code steckt in Branches. Unter doc/errata/staging/ ist “demnächst” zu veröffentlichender Code, der aber noch nicht veröffentlicht ist, drin.

Vergessen ein tag zu erstellen…

Ja, genau. Darauf achten, das richtige meta Paket zu installieren (je nach Serverrolle).

Mastodon