typeorm test
This commit is contained in:
parent
473e30e7fe
commit
ac41a4668f
20
src/datasource.ts
Normal file
20
src/datasource.ts
Normal file
@ -0,0 +1,20 @@
|
||||
/* eslint-disable @typescript-eslint/no-var-requires */
|
||||
import { join } from 'path';
|
||||
import * as dotenv from 'dotenv';
|
||||
import { readFileSync } from 'fs';
|
||||
import * as toml from 'toml';
|
||||
import { DataSource } from 'typeorm';
|
||||
|
||||
dotenv.config();
|
||||
|
||||
const CONFIG_ENV = process.env.NODE_ENV === 'production' ? 'prod' : 'dev';
|
||||
const CONFIG_FILENAME = process.env.CONFIG || `config.${CONFIG_ENV}.toml`;
|
||||
const CONFIG_PATH = join(process.cwd(), CONFIG_FILENAME);
|
||||
|
||||
// toml.parse returns an object that doesn't have the correct prototype,
|
||||
// thus this JSON workaround is used.
|
||||
const config = JSON.parse(
|
||||
JSON.stringify(toml.parse(readFileSync(CONFIG_PATH, { encoding: 'utf-8' }))),
|
||||
);
|
||||
|
||||
export default new DataSource({ ...config.database });
|
Reference in New Issue
Block a user