fix: load dotenv before env validation in drizzle config

This commit is contained in:
Maze Winther 2026-04-15 06:03:23 +02:00
parent 0868d9cf13
commit d5c1b7bf0e
1 changed files with 8 additions and 4 deletions

View File

@ -1,13 +1,17 @@
import type { Config } from "drizzle-kit"; import type { Config } from "drizzle-kit";
import * as dotenv from "dotenv"; import * as dotenv from "dotenv";
import { webEnv } from "@/lib/env/web";
if (webEnv.NODE_ENV === "production") { if (process.env.NODE_ENV === "production") {
dotenv.config({ path: ".env.production" }); dotenv.config({ path: ".env.production" });
} else { } else {
dotenv.config({ path: ".env.local" }); dotenv.config({ path: ".env.local" });
} }
const databaseUrl = process.env.DATABASE_URL;
if (!databaseUrl) {
throw new Error("DATABASE_URL is not set");
}
export default { export default {
schema: "./src/schema.ts", schema: "./src/schema.ts",
dialect: "postgresql", dialect: "postgresql",
@ -15,8 +19,8 @@ export default {
table: "drizzle_migrations", table: "drizzle_migrations",
}, },
dbCredentials: { dbCredentials: {
url: webEnv.DATABASE_URL, url: databaseUrl,
}, },
out: "./migrations", out: "./migrations",
strict: webEnv.NODE_ENV === "production", strict: process.env.NODE_ENV === "production",
} satisfies Config; } satisfies Config;