From 22366380c68d982b6116a8938f9f5be725a4d5f2 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 5 Sep 2026 14:39:09 +0000 Subject: [PATCH] fix(deploy): preserve credentials across installer retries --- install.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/install.sh b/install.sh index aca27af..8141b3f 100755 --- a/install.sh +++ b/install.sh @@ -236,6 +236,13 @@ S_POSTGRES_PASSWORD=$(secret); S_VALKEY_PASSWORD=$(secret) S_INTERNAL_SHARED_SECRET=$(secret); S_ACCESS_TOKEN_SECRET=$(secret); S_SETUP_TOKEN=$(secret) E_POSTGRES_PASSWORD=$(secret); E_PLAYBACK_TICKET_SECRET=$(secret); E_PLAYBACK_LEASE_KEY=$(secret) E_STORAGE_CREDENTIAL_KEY=$(secret); E_PLUGIN_SECRET_KEY=$(secret) +# Re-runs must reuse credentials that initialized existing database volumes. +if [ -f "$ENV_FILE" ]; then + for name in S_POSTGRES_PASSWORD S_VALKEY_PASSWORD S_INTERNAL_SHARED_SECRET S_ACCESS_TOKEN_SECRET S_SETUP_TOKEN E_POSTGRES_PASSWORD E_PLAYBACK_TICKET_SECRET E_PLAYBACK_LEASE_KEY E_STORAGE_CREDENTIAL_KEY E_PLUGIN_SECRET_KEY; do + value=$(sed -n "s/^${name}=//p" "$ENV_FILE" | head -n 1) + [ -n "$value" ] && eval "$name=\"$value\"" + done +fi INSTANCE_SUFFIX=$(hostname 2>/dev/null | tr -cd '[:alnum:]' | cut -c1-24); [ -n "$INSTANCE_SUFFIX" ] || INSTANCE_SUFFIX=customer cat > "$ENV_FILE" <