const postgres = require("postgres"); const databaseUrl = process.env.DATABASE_URL; if (!databaseUrl) throw new Error("DATABASE_URL is required."); const client = postgres(databaseUrl, { max: 1 }); (async () => { for (let attempt = 1; attempt <= 30; attempt += 1) { try { await client`select 1`; await client.end(); return; } catch { if (attempt === 30) { await client.end(); throw new Error("Database was not reachable after 30 attempts."); } await new Promise((resolve) => setTimeout(resolve, 1000)); } } })().catch((error) => { console.error("Database wait failed", error); process.exit(1); });