Files
Beacon/scripts/wait-for-database.ts
Uklonil 3aeaed0af2
CI / quality (push) Waiting to run
UPD: initial architecture
2026-07-27 10:23:50 +02:00

18 lines
538 B
TypeScript

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