Fix source deploy permissions repair

This commit is contained in:
Yera All
2026-04-16 22:30:28 +05:00
parent 3b5a7ad2e7
commit 41f48cb821
+41
View File
@@ -49,6 +49,46 @@ require_command docker
require_command rsync
require_command python3
repair_deploy_permissions() {
if [[ ! -d "$DEPLOY_DIR" ]]; then
return
fi
local target_uid
local target_gid
target_uid="$(id -u)"
target_gid="$(id -g)"
docker run --rm \
-e TARGET_UID="$target_uid" \
-e TARGET_GID="$target_gid" \
-v "$DEPLOY_DIR:/deploy" \
alpine:3.21 \
sh -lc '
set -eu
prune_expr="
-path /deploy/.env.production -o
-path /deploy/.env.production.* -o
-path /deploy/.data -o -path /deploy/.data/* -o
-path /deploy/.data_local -o -path /deploy/.data_local/* -o
-path /deploy/.data_gate3 -o -path /deploy/.data_gate3/* -o
-path /deploy/.data_gate4 -o -path /deploy/.data_gate4/* -o
-path /deploy/.data_uat_dry_run -o -path /deploy/.data_uat_dry_run/* -o
-path /deploy/.data_uat_preflight -o -path /deploy/.data_uat_preflight/* -o
-path /deploy/.models -o -path /deploy/.models/* -o
-path /deploy/.asterisk_assets -o -path /deploy/.asterisk_assets/* -o
-path /deploy/.db_backups -o -path /deploy/.db_backups/* -o
-path /deploy/.deploy_backups -o -path /deploy/.deploy_backups/*
"
# shellcheck disable=SC2086
find /deploy \( $prune_expr \) -prune -o -exec chown "$TARGET_UID:$TARGET_GID" {} +
# shellcheck disable=SC2086
find /deploy \( $prune_expr \) -prune -o -type d -exec chmod u+rwx {} +
# shellcheck disable=SC2086
find /deploy \( $prune_expr \) -prune -o -type f -exec chmod u+rw {} +
'
}
if docker compose version >/dev/null 2>&1; then
COMPOSE_CMD=(docker compose)
elif command -v docker-compose >/dev/null 2>&1; then
@@ -69,6 +109,7 @@ if ! docker info >/dev/null 2>&1; then
fi
install -d "$DEPLOY_DIR"
repair_deploy_permissions
cd "$DEPLOY_DIR"
if [[ "$CI_PROJECT_DIR" != "$DEPLOY_DIR" ]]; then