From ba87719de3ae49df2490af9a4b72a475f790f7d9 Mon Sep 17 00:00:00 2001 From: Micha Date: Wed, 3 Jun 2026 19:30:58 +0200 Subject: [PATCH] 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. --- ops/restore-tests/nextcloud-restore-test.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ops/restore-tests/nextcloud-restore-test.sh b/ops/restore-tests/nextcloud-restore-test.sh index 85f435a..e2c794b 100644 --- a/ops/restore-tests/nextcloud-restore-test.sh +++ b/ops/restore-tests/nextcloud-restore-test.sh @@ -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