Fix: Update migriert REVERB .env-Werte automatisch auf Domain-Basis

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
main v1.1.293
boban 2026-04-26 10:58:06 +02:00
parent becc1bd737
commit 093b5a9eea
1 changed files with 51 additions and 0 deletions

View File

@ -351,4 +351,55 @@ write_version_files "$NEW_VER" "$NEW_REV"
echo "[✓] Update abgeschlossen: ${OLD_VER}${NEW_VER} (${OLD_REV:0:7}${NEW_REV:0:7})"
# -------- .env: REVERB-Werte auf Domain-Basis normalisieren -------------------
migrate_env_reverb() {
local env_file="${APP_DIR}/.env"
[ -f "${env_file}" ] || return 0
# APP_HOST auslesen (authoritative Domain)
local app_host
app_host=$(grep '^APP_HOST=' "${env_file}" | head -1 | cut -d= -f2- | tr -d '"' | tr -d "'")
[ -z "${app_host}" ] && return 0
# Nur migrieren wenn VITE_REVERB_HOST nicht auf app_host zeigt
local current_vite_host
current_vite_host=$(grep '^VITE_REVERB_HOST=' "${env_file}" | head -1 | cut -d= -f2-)
if [ "${current_vite_host}" = "\${REVERB_HOST}" ] || [ "${current_vite_host}" = "${app_host}" ]; then
return 0 # bereits korrekt
fi
echo "[i] .env: REVERB-Werte werden auf Domain '${app_host}' aktualisiert …"
local scheme="http" port="80"
[ -f "/etc/letsencrypt/live/${app_host}/fullchain.pem" ] && scheme="https" && port="443"
_uenv() {
local k="$1" v="$2"
if grep -q "^${k}=" "${env_file}"; then
sed -i "s|^${k}=.*|${k}=${v}|" "${env_file}"
else
echo "${k}=${v}" >> "${env_file}"
fi
}
_uenv "REVERB_HOST" "\${APP_HOST}"
_uenv "REVERB_PORT" "${port}"
_uenv "REVERB_SCHEME" "${scheme}"
_uenv "REVERB_PATH" "/ws"
_uenv "REVERB_SERVER_HOST" "127.0.0.1"
_uenv "REVERB_SERVER_PORT" "8080"
_uenv "REVERB_SERVER_SCHEME" "http"
_uenv "REVERB_SERVER_PATH" ""
_uenv "VITE_REVERB_HOST" "\${REVERB_HOST}"
_uenv "VITE_REVERB_PORT" "\${REVERB_PORT}"
_uenv "VITE_REVERB_SCHEME" "\${REVERB_SCHEME}"
_uenv "VITE_REVERB_PATH" "\${REVERB_PATH}"
# Assets neu bauen mit den korrekten Werten
frontend_build_quiet || true
as_app "cd ${APP_DIR} && php artisan optimize:clear || true"
echo "[✓] REVERB .env migriert + Assets neu gebaut."
}
migrate_env_reverb
ensure_system