Package: Release Repository Manager

Das Modul verwaltet ein Release-Repository für b4A Packages. Es stellt Operationen für Initialisierung, Herunterladen und Hochladen von Releases sowie das Auflisten von Packages und Versionen zur Verfügung.

Bezeichnung

Name

pm.Repository

Datenströme

  • Versions versions: Version

  • Packages packages: Package

Konfiguration

Gruppe: Optionen

Operation (operation)

Definiert die Operation, die auf das Release Repository ausgeführt werden soll. Abhängig von der Operation müssen unterschiedliche andere Optionen gesetzt werden.

Mögliche Werte: Initialisieren (init), Hochladen (upload), Herunterladen (download), Packages auflisten (list-packages), Versionen auflisten (list-versions)

Package (package)

Name des Package

Version (version)

Versionsnummer des Releases

Hochzuladende Release-Datei (upload-file)

Release-Datei, die in das Release-Repository hochgeladen werden soll

Heruntergeladene Release-Datei (download-file)

Speicherort für die heruntergeladene Release-Datei

Test-Konfigurationsdatei (repository-config-file)

Pfad zur Konfigurationsdatei für Compliance-Tests

Beschreibung

Das Modul bedient sich an den verfügbaren Backend-Implementierung um ein Release-Repository zu verwalten. Die Einstellungen für das gewählte Backend werden in der Konfigurationsdatei repository.json gespeichert.

Backends

filesystem

Das Backend nutzt ein Verzeichnis, um alle Release-Dateien abzulegen und zu verwalten. Da wird in einer Index-Datei gespeichert welche b4A Packages im Repository verfügbar sind. Pro b4A Package wird ein Unterverzeichnis angelegt und darin werden die einzelnen Release-Datei abgelegt. Das Namensschema für die Dateien ist <Package-Name>-<Version>.zip. Die Einstellungen für das Basisverzeichnis und dem Namen der Index-Datei werden in der Datei repository.json festgelegt.

  • directory: Basisverzeichnis für das Release-Repository

  • indexFile: Name der Index-Datei

{
    "directory": "/data/best4Automic/repository",
    "indexFile": ".package.idx"
}

Beispiele

Hochladen einer neuen Release-Datei

./b4A pm.Repository --package B4A.PM --operation upload --version 1.4.0 --download-file /tmp/B4A.PM-20240109.zip --log-variants REPORT

Auflisten aller Releases des b4A Package B4A.BASE

./b4A pm.Repository --operation list-versions --package B4A.BASE --log-variants REPORT --log-levels DATASTREAM