split in env required and dynamic values

This commit is contained in:
Julian Krauser 2025-04-19 16:51:37 +02:00
parent f32143b7ac
commit 730c25a9a1
35 changed files with 491 additions and 198 deletions

View file

@ -1,7 +1,6 @@
import "dotenv/config";
import "reflect-metadata";
import { DataSource } from "typeorm";
import { SettingHelper } from "./helpers/settingsHelper";
import { user } from "./entity/management/user";
import { refresh } from "./entity/refresh";
@ -51,14 +50,17 @@ import { TemplatesAndProtocolSort1742549956787 } from "./migrations/174254995678
import { QueryToUUID1742922178643 } from "./migrations/1742922178643-queryToUUID";
import { NewsletterColumnType1744351418751 } from "./migrations/1744351418751-newsletterColumnType";
import { QueryUpdatedAt1744795756230 } from "./migrations/1744795756230-QueryUpdatedAt";
import { setting } from "./entity/setting";
import { SettingsFromEnv1745059495808 } from "./migrations/1745059495808-settingsFromEnv";
import { DB_HOST, DB_NAME, DB_PASSWORD, DB_PORT, DB_TYPE, DB_USERNAME } from "./env.defaults";
const dataSource = new DataSource({
type: SettingHelper.getEnvSetting("database.type") as any,
host: SettingHelper.getEnvSetting("database.host"),
port: Number(SettingHelper.getEnvSetting("database.port")),
username: SettingHelper.getEnvSetting("database.username"),
password: SettingHelper.getEnvSetting("database.password"),
database: SettingHelper.getEnvSetting("database.name"),
type: DB_TYPE as any,
host: DB_HOST,
port: DB_PORT,
username: DB_USERNAME,
password: DB_PASSWORD,
database: DB_NAME,
synchronize: false,
logging: process.env.NODE_ENV ? true : ["schema", "error", "warn", "log", "migration"],
bigNumberStrings: false,
@ -103,6 +105,7 @@ const dataSource = new DataSource({
membershipView,
webapi,
webapiPermission,
setting,
],
migrations: [
BackupAndResetDatabase1738166124200,
@ -111,6 +114,7 @@ const dataSource = new DataSource({
QueryToUUID1742922178643,
NewsletterColumnType1744351418751,
QueryUpdatedAt1744795756230,
SettingsFromEnv1745059495808,
],
migrationsRun: true,
migrationsTransactionMode: "each",