fix(deploy): .env.docker sans quotes — source + sed corrigé
Root cause: workflow deploy.yaml ligne 74 écrivait VAR="value"
Docker Compose v2 (2.22+) rejette ce format.
Fix source: echo "${key}=${val}" (sans quotes autour de la valeur)
Fix sed: deux passes séparées pour double et simple quotes, sans \x27
This commit is contained in:
@@ -71,7 +71,7 @@ jobs:
|
|||||||
local key="$1" val="$2"
|
local key="$1" val="$2"
|
||||||
[ -z "$val" ] && return
|
[ -z "$val" ] && return
|
||||||
sed -i "/^[[:space:]]*${key}=/d" "$ENV_FILE"
|
sed -i "/^[[:space:]]*${key}=/d" "$ENV_FILE"
|
||||||
echo "${key}=\"${val}\"" >> "$ENV_FILE"
|
echo "${key}=${val}" >> "$ENV_FILE"
|
||||||
}
|
}
|
||||||
upsert NEXTAUTH_URL "$APP_URL"
|
upsert NEXTAUTH_URL "$APP_URL"
|
||||||
upsert NEXTAUTH_SECRET "$NEXTAUTH_SECRET"
|
upsert NEXTAUTH_SECRET "$NEXTAUTH_SECRET"
|
||||||
|
|||||||
@@ -129,7 +129,8 @@ cd "$ROOT"
|
|||||||
|
|
||||||
# Sanitize .env.docker: Docker Compose v2 rejects quoted values (VAR="val" → VAR=val)
|
# Sanitize .env.docker: Docker Compose v2 rejects quoted values (VAR="val" → VAR=val)
|
||||||
if [ -f "$ROOT/.env.docker" ]; then
|
if [ -f "$ROOT/.env.docker" ]; then
|
||||||
sed -i -E 's/^([A-Za-z_][A-Za-z0-9_]*)=(["\x27])(.*)\2$/\1=\3/' "$ROOT/.env.docker" || true
|
sed -i -E 's/^([A-Za-z_][A-Za-z0-9_]*)="(.*)"$/\1=\2/' "$ROOT/.env.docker" || true
|
||||||
|
sed -i -E "s/^([A-Za-z_][A-Za-z0-9_]*)='(.*)'$/\1=\2/" "$ROOT/.env.docker" || true
|
||||||
fi
|
fi
|
||||||
|
|
||||||
load_env_docker
|
load_env_docker
|
||||||
|
|||||||
Reference in New Issue
Block a user