26 lines
738 B
TypeScript
26 lines
738 B
TypeScript
import { Sequelize } from "sequelize";
|
|
|
|
const dbUrl = process.env.DATABASE_URL;
|
|
const dbHost = process.env.DB_HOST;
|
|
const dbPort = Number(process.env.DB_PORT ?? 5432);
|
|
const dbName = process.env.DB_NAME;
|
|
const dbUser = process.env.DB_USER;
|
|
const dbPassword = process.env.DB_PASSWORD;
|
|
|
|
let sequelize: Sequelize | null = null;
|
|
|
|
if (dbUrl) {
|
|
sequelize = new Sequelize(dbUrl, {
|
|
dialect: "postgres",
|
|
logging: process.env.DB_LOGGING === "true" ? console.log : false,
|
|
});
|
|
} else if (dbHost && dbName && dbUser) {
|
|
sequelize = new Sequelize(dbName, dbUser, dbPassword, {
|
|
host: dbHost,
|
|
port: dbPort,
|
|
dialect: "postgres",
|
|
logging: process.env.DB_LOGGING === "true" ? console.log : false,
|
|
});
|
|
}
|
|
|
|
export { sequelize };
|