diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index ef0dd36..70aa62b 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -16,6 +16,7 @@ jobs: CONFIG_ENV_DIR: "config/staging" DEPLOY_ENV: "staging" LOCAL_ROOT: "/deploy/nexus" + RSYNC_OPTS: "--delete --inplace --no-whole-file --no-owner --no-group --no-perms --omit-dir-times --chmod=Du=rwx,Dgo=rx,Fu=rw,Fgo=r" SITE_DOMAIN_DIR: "${{ vars.SITE_DOMAIN_DIR }}" TARGET_PATH: "/deploy/nexus/staging/" steps: @@ -88,11 +89,13 @@ jobs: mkdir -p "${TARGET_PATH}" echo "🚀 Deploy ${DEPLOY_ENV} → ${TARGET_PATH}" + chmod -R u+rwX,go+rX "${TARGET_PATH}" || true + echo "RSYNC_OPTS: ${RSYNC_OPTS}" for d in $BASE_DIRS; do echo "🔁 Sync ${d}/ → ${TARGET_PATH}${d}/" mkdir -p "${TARGET_PATH}${d}/" - rsync -a --delete --exclude=".gitkeep" "${d}/" "${TARGET_PATH}${d}/" + rsync -a ${RSYNC_OPTS} --exclude=".gitkeep" "${d}/" "${TARGET_PATH}${d}/" done echo "🧩 Baue gemischtes Config-Verzeichnis (config/*.php + ${CONFIG_ENV_DIR})..." @@ -115,7 +118,7 @@ jobs: echo "🔁 Sync .ci_config_deploy/ → ${TARGET_PATH}${CONFIG_BASE_DIR}/" mkdir -p "${TARGET_PATH}${CONFIG_BASE_DIR}/" - rsync -a --delete --exclude=".gitkeep" ".ci_config_deploy/" "${TARGET_PATH}${CONFIG_BASE_DIR}/" + rsync -a ${RSYNC_OPTS} --exclude=".gitkeep" ".ci_config_deploy/" "${TARGET_PATH}${CONFIG_BASE_DIR}/" echo "=== DEBUG: post-sync spot checks ===" ls -la "${TARGET_PATH}" | head -n 200 || true @@ -132,6 +135,7 @@ jobs: CONFIG_ENV_DIR: "config/prod" DEPLOY_ENV: "production" LOCAL_ROOT: "/deploy/nexus" + RSYNC_OPTS: "--delete --inplace --no-whole-file --no-owner --no-group --no-perms --omit-dir-times --chmod=Du=rwx,Dgo=rx,Fu=rw,Fgo=r" SITE_DOMAIN_DIR: "${{ vars.SITE_DOMAIN_DIR }}" TARGET_PATH: "/deploy/nexus/live/" steps: @@ -204,11 +208,13 @@ jobs: mkdir -p "${TARGET_PATH}" echo "🚀 Deploy ${DEPLOY_ENV} → ${TARGET_PATH}" + chmod -R u+rwX,go+rX "${TARGET_PATH}" || true + echo "RSYNC_OPTS: ${RSYNC_OPTS}" for d in $BASE_DIRS; do echo "🔁 Sync ${d}/ → ${TARGET_PATH}${d}/" mkdir -p "${TARGET_PATH}${d}/" - rsync -a --delete --exclude=".gitkeep" "${d}/" "${TARGET_PATH}${d}/" + rsync -a ${RSYNC_OPTS} --exclude=".gitkeep" "${d}/" "${TARGET_PATH}${d}/" done echo "🧩 Baue gemischtes Config-Verzeichnis (config/*.php + ${CONFIG_ENV_DIR})..." @@ -231,7 +237,7 @@ jobs: echo "🔁 Sync .ci_config_deploy/ → ${TARGET_PATH}${CONFIG_BASE_DIR}/" mkdir -p "${TARGET_PATH}${CONFIG_BASE_DIR}/" - rsync -a --delete --exclude=".gitkeep" ".ci_config_deploy/" "${TARGET_PATH}${CONFIG_BASE_DIR}/" + rsync -a ${RSYNC_OPTS} --exclude=".gitkeep" ".ci_config_deploy/" "${TARGET_PATH}${CONFIG_BASE_DIR}/" echo "=== DEBUG: post-sync spot checks ===" ls -la "${TARGET_PATH}" | head -n 200 || true