icynet-auth-server/src/modules/objects/database/database.providers.ts

18 lines
543 B
TypeScript
Raw Normal View History

2022-08-18 07:12:02 +00:00
import { FactoryProvider } from '@nestjs/common';
import { ConfigurationService } from 'src/modules/config/config.service';
2022-08-18 07:12:02 +00:00
import { DataSource, DataSourceOptions } from 'typeorm';
2022-03-09 18:37:04 +00:00
2022-08-18 07:12:02 +00:00
export const databaseProviders: FactoryProvider<Promise<DataSource>>[] = [
2022-03-09 18:37:04 +00:00
{
2022-08-18 07:12:02 +00:00
provide: 'DATA_SOURCE',
useFactory: async (config: ConfigurationService) => {
2022-08-18 07:12:02 +00:00
const dataSource = new DataSource({
...config.get<DataSourceOptions>('database'),
});
2022-08-18 07:12:02 +00:00
return dataSource.initialize();
},
inject: [ConfigurationService],
2022-03-09 18:37:04 +00:00
},
];