From aeb8b66375335e8c9d6cb9cb0d8d7da3d8b79628 Mon Sep 17 00:00:00 2001 From: Leonardo Bishop Date: Fri, 15 Mar 2024 20:23:41 +0000 Subject: Initial commit --- src/app.module.ts | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 src/app.module.ts (limited to 'src/app.module.ts') diff --git a/src/app.module.ts b/src/app.module.ts new file mode 100644 index 0000000..b79f2c7 --- /dev/null +++ b/src/app.module.ts @@ -0,0 +1,43 @@ +import { Module } from '@nestjs/common'; +import { SessionModule } from './session/session.module'; +import { TypeOrmModule } from '@nestjs/typeorm'; +import { FileModule } from './file/file.module'; +import { SeedingService } from './seeder/seeding.service'; +import { ConfigModule, ConfigService } from '@nestjs/config'; +import configuration from './config/configuration'; +import { ScheduleModule } from '@nestjs/schedule'; + +@Module({ + imports: [ + ConfigModule.forRoot({ + load: [configuration], + }), + TypeOrmModule.forRootAsync({ + imports: [ConfigModule], + inject: [ConfigService], + useFactory: (configService: ConfigService) => { + return { + type: 'mysql', + host: configService.get('database.host'), + port: configService.get('database.port'), + username: configService.get('database.username'), + password: configService.get('database.password'), + database: configService.get('database.database'), + autoLoadEntities: true, + synchronize: true, + }; + }, + }), + ScheduleModule.forRoot(), + SessionModule, + FileModule, + ], + providers: [SeedingService], +}) +export class AppModule { + constructor(private readonly seedingService: SeedingService) {} + + async onApplicationBootstrap(): Promise { + await this.seedingService.seed(); + } +} -- cgit v1.2.3-70-g09d2