import { MigrationInterface, QueryRunner } from "typeorm"; import { setting_table } from "./baseSchemaTables/admin"; import SettingHelper from "../helpers/settingsHelper"; import ms from "ms"; export class SettingsFromEnv1745059495808 implements MigrationInterface { name = "SettingsFromEnv1745059495808"; public async up(queryRunner: QueryRunner): Promise { await queryRunner.createTable(setting_table, true, true, true); //transfer settings of env to database await SettingHelper.setSetting("club.name", process.env.CLUB_NAME); await SettingHelper.setSetting("club.website", process.env.CLUB_WEBSITE); await SettingHelper.setSetting("session.jwt_expiration", process.env.JWT_EXPIRATION as ms.StringValue); await SettingHelper.setSetting("session.refresh_expiration", process.env.REFRESH_EXPIRATION as ms.StringValue); await SettingHelper.setSetting( "session.pwa_refresh_expiration", process.env.PWA_REFRESH_EXPIRATION as ms.StringValue ); await SettingHelper.setSetting("mail.username", process.env.MAIL_USERNAME); await SettingHelper.setSetting("mail.password", process.env.MAIL_PASSWORD); await SettingHelper.setSetting("mail.host", process.env.MAIL_HOST); await SettingHelper.setSetting("mail.port", Number(process.env.MAIL_PORT)); await SettingHelper.setSetting("mail.secure", Boolean(process.env.MAIL_SECURE)); await SettingHelper.setSetting("backup.interval", Number(process.env.BACKUP_INTERVAL)); await SettingHelper.setSetting("backup.copies", Number(process.env.BACKUP_COPIES)); } public async down(queryRunner: QueryRunner): Promise { await queryRunner.dropTable(setting_table.name, true, true, true); } }