From 7f3bde56b6abad3059994b7200c70bfce9d45ed9 Mon Sep 17 00:00:00 2001 From: Deeman Date: Tue, 24 Feb 2026 02:53:50 +0100 Subject: [PATCH] fix(infra): guard chown calls to make setup_server.sh fully idempotent Co-Authored-By: Claude Sonnet 4.6 --- infra/setup_server.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/infra/setup_server.sh b/infra/setup_server.sh index a4b031f..09f7bc9 100644 --- a/infra/setup_server.sh +++ b/infra/setup_server.sh @@ -33,7 +33,9 @@ echo "Added $SERVICE_USER to docker group" # Create app directory owned by service user mkdir -p "$APP_DIR" -chown "$SERVICE_USER:$SERVICE_USER" "$APP_DIR" +if [ "$(stat -c '%U' "$APP_DIR")" != "$SERVICE_USER" ]; then + chown "$SERVICE_USER:$SERVICE_USER" "$APP_DIR" +fi echo "Created $APP_DIR" # Generate deploy key as service user if not present @@ -71,7 +73,9 @@ fi # Create data directories owned by service user mkdir -p /data/padelnomics/landing -chown -R "$SERVICE_USER:$SERVICE_USER" /data/padelnomics +if [ "$(stat -c '%U' /data/padelnomics)" != "$SERVICE_USER" ]; then + chown -R "$SERVICE_USER:$SERVICE_USER" /data/padelnomics +fi echo "Created /data/padelnomics/landing" # Install and enable systemd services