Files
meldestelle/docs/04_Agents/Besprechung_2026-04-03/Berichte/Bericht_DevOps.md
T
stefan b9ec070993
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Has been cancelled
docs: log session outcomes and apply enhancements across multiple components
- **Docker Fixes:** Resolved failed builds for Gateway and Ping services by switching to `eclipse-temurin:21-jdk-alpine`, correcting Gradle configurations, and fixing cache mount paths.
- **ZNS-Import Consul Registration:** Enabled Consul service discovery by updating `application.yaml` and `build.gradle.kts`.
- **pgAdmin Provisioning:** Preconfigured the database server in `servers.json` and updated `dc-ops.yaml` for seamless setup.
- **Postman Documentation:** Added a detailed Postman test guide covering environment setup, endpoint groups, and recommended test sequences.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 14:24:46 +02:00

3.2 KiB
Raw Blame History

🐧 [DevOps Engineer] — Zwischenbericht zur Besprechung vom 3. April 2026

Datum: 3. April 2026, ca. 13:00 Uhr Rolle: Docker, CI/CD, Gradle, Security, Desktop-Packaging, Infrastruktur


Was wurde erreicht?

Sprint A — vollständig abgeschlossen

  • Docker-Compose-Setup (A-1): Alle Services in docker-compose.yaml / dc-*.yaml geprüft. Lokale Entwicklungsumgebung startet mit einem einzigen Befehl. Healthchecks für alle Services definiert.

Sprint B — vollständig abgeschlossen

  • CI/CD Pipeline für Compose Desktop Tests (B-1): Gitea Actions Workflow .gitea/workflows/desktop-tests.yml angelegt. Headless-Umgebung mit xvfb-run (1920×1080×24). Gradle-Task :frontend:shells:meldestelle-desktop:jvmTest integriert. Build-Artefakte werden gespeichert.
  • Gradle-Build-Optimierungen (B-2): Build-Cache, Parallele Builds, Headless-Flag aktiv. Gradle Wrapper auf Version 9.4.0 aktualisiert.

Sprint C — weitgehend abgeschlossen

  • Desktop-App Packaging (C-1): compose.desktop.nativeDistributions vollständig konfiguriert für Linux (.deb), Windows (.msi) und macOS (.dmg). App-Metadaten, eingebettetes JRE mit minimalem Footprint und JVM-Args für gepackte App konfiguriert. Icon-Ressourcen-Verzeichnis mit ICONS_PLACEHOLDER.md angelegt.
  • Semantic Versioning (C-2): Schema MAJOR.MINOR.PATCH[-QUALIFIER] definiert. Zentrale Versionsquelle version.properties (aktuell 1.0.0-SNAPSHOT). Root- und Desktop-build.gradle.kts lesen Version daraus. Release-Workflow .gitea/workflows/release.yml mit Git-Tagging, Linux .deb und Windows .msi Build-Jobs angelegt. CHANGELOG.md im Keep-a-Changelog-Format erstellt.

🔄 Was ist noch offen?

Sprint C — Restpunkte

  • C-1 Offene Punkte: Echte Icon-Dateien (icon.png, icon.ico, icon.icns) fehlen noch — wartet auf 🖌️ UI/UX. Testinstallation auf Ziel-Betriebssystem steht noch aus.
  • C-3 Produktions-Deployment: Reverse-Proxy (Nginx/Traefik), HTTPS-Zertifikat-Management, Backup-Strategie für Produktionsdatenbanken.

Sprint D — geplant (nächste Woche)

  • D-1 Multi-Tenant Datenbankinfrastruktur: Pro-Tenant-Schema in Postgres absichern, Monitoring in Grafana, Pro-Tenant-Backup-Strategie.
  • D-2 mDNS / LAN-Discovery Infrastruktur (ADR-0022 ): Avahi-Dienst in Docker-Compose, WebSocket-Endpunkt in Nginx/Traefik durchreichen.

⏸️ Pangolin / externer Zugriff — kein MVP-Blocker, zurückgestellt.


🔗 Abhängigkeiten

Warte auf Von wem Betrifft
Icon-Dateien (PNG/ICO/ICNS) 🖌️ UI/UX C-1 Release-Build
QA: Test-Integration in CI 🧐 QA C-4 C-1 Packaging-Tests

💬 Botschaft an die Runde

Die Infrastruktur läuft stabil: Docker-Compose, CI/CD-Pipeline und Gradle-Optimierungen sind fertig. Das * Desktop-Packaging ist vollständig konfiguriert* — wir können theoretisch schon .deb- und .msi-Installer bauen. Der einzige Blocker für den ersten echten Release-Build sind die App-Icons vom UI/UX-Team. Sobald die Icons vorliegen, kann der Release-Workflow sofort laufen.