fix(restore): nextcloud-test create .ncdata marker in test data dir

Zweiter Lauf am 2026-06-03 ergab nach dem ersten Fix (config-Permissions)
einen neuen Fehler: HTTP 503 mit "Your data directory is invalid. Ensure
there is a file called .ncdata in the root of the data directory."

Hintergrund: Nextcloud prueft beim HTTP-Request eine Marker-Datei `.ncdata`
mit festem Inhalt im Datenverzeichnis. Produktiv liegt der Marker unter
/mnt/user/documents/nextcloud-data/.ncdata. Der Smoke-Test mountet diesen
Pfad bewusst nicht, also war das Test-data-Verzeichnis leer und Nextcloud
hat den Marker vermisst.

Fix: Marker vor dem Container-Start anlegen. Die anderen Tier-2-Tests
(Paperless, Mealie, Mail-Archiver) brauchten so etwas nicht, weil ihre
Apps keine entsprechende Validierungs-Pruefung haben.
This commit is contained in:
2026-06-03 19:30:58 +02:00
parent 53c34dca0e
commit ba87719de3
@@ -127,6 +127,14 @@ cp "$DUMP_HOST_PATH" "$RESTORE_ROOT/dumps/latest/nextcloud.dump"
# Im Restore-Lab ist das /mnt/user/backups/restore-lab/nextcloud/data.
mkdir -p "$RESTORE_ROOT/data"
# Nextcloud prueft auf einen Marker `.ncdata` mit dem festen Inhalt
# "# Nextcloud data directory" und blockt sonst mit "Your data directory
# is invalid" (HTTP 503). Produktiv liegt der Marker unter
# /mnt/user/documents/nextcloud-data/.ncdata; der Smoke mountet diesen
# Pfad bewusst nicht, also legen wir den Marker hier an. Das ist die
# in der Nextcloud-Doku vorgesehene Form.
echo "# Nextcloud data directory" > "$RESTORE_ROOT/data/.ncdata"
# Unraid (FUSE/shfs) ignoriert chown auf User-Shares. Stattdessen setzen
# wir die Dateien auf world-writable, damit der Nextcloud-Entrypoint
# (der als root startet und intern auf www-data wechselt) die Dateien