Zum Inhalt

Releases und F-Droid

Der Forgejo-Workflow .forgejo/workflows/android-fdroid.yml wird manuell oder durch Tags im Format vMAJOR.MINOR.PATCH gestartet.

v1.2.3

Er übernimmt:

  1. Version bestimmen und validieren
  2. signierte Release-APK bauen
  3. API-18- und Target-SDK-Kompatibilität prüfen
  4. signiertes F-Droid-Repository erzeugen
  5. aktuelle Version und APK-Link in die Dokumentationsstartseite eintragen
  6. Zensical-Dokumentation auf Deutsch bauen
  7. F-Droid unter site/fdroid/repo/ in die Zensical-Ausgabe kopieren
  8. die gemeinsame Site über git-pages/action@v2 veröffentlichen

Versionscode

MAJOR * 1000000 + MINOR * 1000 + PATCH

v1.2.3 ergibt 1002003. MINOR und PATCH dürfen jeweils höchstens 999 sein.

Runner

Der Workflow verwendet das kontrollierte gemeinsame Runner-Image:

runner:
  labels:
    - android_build:docker://dev.spittank.org/daniel/android_build:latest

container:
  force_pull: true

Das Image enthält Java 17, Android SDK/Build Tools, Gradle 9.3.1, fdroidserver, Node 22 und die beim Image-Build aktuelle Zensical-Version einschließlich ihrer Python-Abhängigkeiten. Der Android-Build läuft mit Gradles --offline-Option; die Dokumentation wird direkt mit zensical gebaut.

Secrets

Erforderlich:

  • ANDROID_KEYSTORE_B64
  • ANDROID_KEYSTORE_PASSWORD
  • ANDROID_KEY_ALIAS
  • ANDROID_KEY_PASSWORD

Optional für eine getrennte F-Droid-Signatur:

  • FDROID_REPO_KEYSTORE_B64
  • FDROID_REPO_KEYSTORE_PASSWORD
  • FDROID_REPO_KEY_ALIAS
  • FDROID_REPO_KEY_PASSWORD

Fehlen die optionalen Werte, verwendet der Workflow den APK-Keystore auch für das Repository.

Veröffentlichte Pfade

Inhalt URL
Dokumentation https://daniel.snii.de/printstar/
F-Droid-Repository https://daniel.snii.de/printstar/fdroid/repo/
APK versionierter Dateiname unter fdroid/repo/

Der Zensical-Build ersetzt nur die frühere einfache docs/site/index.html. Erzeugung und Signierung des F-Droid-Repositorys bleiben erhalten.