From 266333069bcdae2f1f31dadfb2d5729f092c8096 Mon Sep 17 00:00:00 2001 From: Robert Rapp Date: Sun, 30 Aug 2026 23:40:24 +0200 Subject: [PATCH] Deployment reparieren: git safe.directory und Schreibrechte fuer www-data Der Webhook lief, brach aber sofort ab: fatal: detected dubious ownership in repository at '/var/www/html' Das Repo gehoert einem anderen Benutzer als dem, unter dem PHP-FPM laeuft. Git verweigert daraufhin jede Operation, und weil deploy.php die Schritte mit && verkettet, wurde hugo nie erreicht. Auf main gepushte Aenderungen gingen deshalb nie live - die Seite zeigte immer den Stand des letzten Containerstarts, weil nur der Entrypoint als root gebaut hat. Der Entrypoint traegt jetzt systemweit safe.directory fuer das Repo und das Theme-Submodule ein und uebergibt das Verzeichnis an www-data, damit git pull und der hugo-Build tatsaechlich schreiben koennen. Greift erst nach einem Neubau des Containers - der laufende Container kann sich nicht selbst reparieren. Co-Authored-By: Claude Opus 5 --- kirby/entrypoint.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/kirby/entrypoint.sh b/kirby/entrypoint.sh index 1127cbc..65e64ad 100644 --- a/kirby/entrypoint.sh +++ b/kirby/entrypoint.sh @@ -5,6 +5,15 @@ set -e PHP_FPM=$(find /usr/sbin -name 'php-fpm*' | head -1) $PHP_FPM +# deploy.php laeuft als www-data, das Repo gehoert einem anderen Benutzer. +# Ohne diese Ausnahme bricht git mit "detected dubious ownership" ab und die +# &&-Kette in deploy.php erreicht hugo nie. --system gilt fuer alle Benutzer. +git config --system --add safe.directory /var/www/html +git config --system --add safe.directory /var/www/html/themes/gokarna + +# www-data muss ins Repo schreiben koennen (git pull, hugo nach public/). +chown -R www-data:www-data /var/www/html || true + # Initial Hugo build cd /var/www/html git submodule update --init --recursive