fix(deploy): brand-guard compat + db_reachable med RDS SSL + first-deploy SSL

This commit is contained in:
Sven (AAMOS AI)
2026-08-12 04:22:24 +07:00
parent 659d0f9290
commit c5a8530fbf
2 changed files with 9 additions and 4 deletions
+8 -3
View File
@@ -95,6 +95,9 @@ fi
get_env() { { grep -E "^$1=" .env || true; } | head -1 | cut -d= -f2-; }
AAMOS_MODE_VAL=$(get_env AAMOS_MODE)
# Sätt NODE_EXTRA_CA_CERTS om definierad i .env (behövs för RDS SSL från Node/pg).
EXTRA_CA=$(get_env NODE_EXTRA_CA_CERTS)
[ -n "$EXTRA_CA" ] && export NODE_EXTRA_CA_CERTS="$EXTRA_CA"
if [ "$MODE" = "production" ]; then
if [ "$AAMOS_MODE_VAL" = "gemini" ]; then
[ -n "$(get_env GEMINI_API_KEY)" ] || fail "Produktion kräver GEMINI_API_KEY när AAMOS_MODE=gemini."
@@ -113,11 +116,13 @@ say "GRIND 1 OK: .env på plats ($([ "$MODE" = production ] && echo 'produktions
# GRIND 2: Databas + Redis (nåbarhet avgör Docker är bara reservstart)
# ---------------------------------------------------------------------------
db_reachable() {
node -e "
(cd "$ROOT" && node -e "
const { Client } = require('pg');
const c = new Client({ connectionString: process.env.DB_URL, connectionTimeoutMillis: 3000 });
const extraCa = process.env.NODE_EXTRA_CA_CERTS ? require('fs').readFileSync(process.env.NODE_EXTRA_CA_CERTS) : undefined;
const ssl = extraCa ? { ca: extraCa } : undefined;
const c = new Client({ connectionString: process.env.DB_URL, connectionTimeoutMillis: 3000, ...(ssl ? { ssl } : {}) });
c.connect().then(() => c.end()).then(() => process.exit(0)).catch(() => process.exit(1));
" 2>/dev/null
") 2>/dev/null
}
# Rå TCP-PING: alla svar (även -NOAUTH) bevisar att Redis är nåbar.
redis_reachable() {