import { drizzle } from "drizzle-orm/postgres-js"; import { migrate } from "drizzle-orm/postgres-js/migrator"; import postgres from "postgres"; import { fileURLToPath } from "url"; import path from "path"; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); if (!process.env.DATABASE_URL) { console.error("ERROR: DATABASE_URL is required"); process.exit(1); } console.log("Running database migrations..."); const client = postgres(process.env.DATABASE_URL, { max: 1, onnotice: () => {}, // suppress NOTICE messages (schema/table already exists, etc.) }); try { const db = drizzle(client); await migrate(db, { migrationsFolder: path.resolve(__dirname, "../drizzle") }); console.log("Migrations completed successfully"); } catch (err) { console.error("Migration failed:", err); await client.end().catch(() => {}); process.exit(1); } await client.end().catch(() => {}); process.exit(0);