Wiki-Build und Deployment über Portainer
Das Wiki läuft als Stack wiki auf rwcloudsrv112 (100.72.156.2), erreichbar
unter https://wiki.rwcloud.ch. Caddy und Platzierung werden in
homelab/portainer-hosted verwaltet. Der alte SSH-/Ansible-Deploy entfällt.
Ein Push auf main startet .gitea/workflows/ci.yml: Abhängigkeiten installieren,
Multirepo-Dokumentation per vorhandenem GIT_SSH_KEY laden, mkdocs build,
Container bauen und in gitea.rwcloud.ch/homelab/wiki publizieren. Der Build
veröffentlicht sha-<Quellcommit> und latest, mit Quell-SHA als OCI-Label.
Erst nach erfolgreichem Push aktualisiert scripts/promote_wiki.py ausschließlich
WIKI_IMAGE der Wiki-Zeile in hosts/deployments.yaml auf main des
Deployment-Repos. Die Referenz enthält Tag und festen Registry-Digest.
Dieser Commit startet dort deploy; Portainer aktualisiert den Wiki-Stack.
Der vorhandene Secret AUTH_TOKEN benötigt read/write packages und Schreibrecht
auf homelab/portainer-hosted. Registry-Login bleibt beim bisherigen Benutzer
build.user. Portainer-Zugangsdaten bleiben ausschließlich im Deployment-Repo.
Überholte Builds werden anhand der aktuellen Main-SHA vor Promotion übersprungen.
Die Dateiversion schützt vor konkurrierenden Matrixänderungen.
Kontrolle: zuerst Wiki-Build-Run, dann automatisch erzeugten Matrix-Commit und Deployment-Run prüfen; anschließend https://wiki.rwcloud.ch öffnen und eine Unterseite/Suche testen. Ein grüner Build allein beweist noch kein Deployment. Bei Buildfehler bleibt das bisher festgelegte Image. Bei fehlendem Schreibrecht schlägt die Promotion sichtbar fehl. Kein Zurückschreiben ins Wiki-Quellrepo.
Rollback: früheren Wiki-Digest aus der Git-Historie in der Matrix eintragen und
committen. Das Wiki ist statisch; es hat keine Geschäftsdatenbank oder Datenvolumes.
Caddy-Konfiguration und Zertifikatsverteilung sind im Deployment-Runbook
docs/runbooks/rwcloudsrv112.md beschrieben.