assessment-model/src/app/db/db.ts
2024-07-25 18:34:17 +01:00

34 lines
1,011 B
TypeScript

// db.ts
import { drizzle } from "drizzle-orm/node-postgres";
import { Pool } from "pg";
import * as portfolioSchema from "@/app/db/schema/portfolio";
import * as propertySchema from "@/app/db/schema/property";
import * as recommendationSchema from "@/app/db/schema/recommendations";
import * as materialSchema from "@/app/db/schema/materials";
import * as solarSchema from "@/app/db/schema/solar";
import * as EnergyAssessmentsSchema from "@/app/db/schema/energy_assessments";
import * as Relations from "@/app/db/schema/relations";
export const pool = new Pool({
host: process.env.DB_HOST,
port: Number(process.env.DB_PORT),
user: process.env.DB_USERNAME,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME,
max: 20,
idleTimeoutMillis: 30000,
});
const schema = {
...portfolioSchema,
...propertySchema,
...recommendationSchema,
...materialSchema,
...solarSchema,
...Relations,
...EnergyAssessmentsSchema,
};
export const db = drizzle(pool, {
schema: schema,
});