-
Notifications
You must be signed in to change notification settings - Fork 0
/
knexfile.ts
37 lines (34 loc) · 1.01 KB
/
knexfile.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import { IDbClientEnvConfig } from './src/infrastructure/database/client/dbClientEnvConfig.inteface';
import { EnvConfig } from './src/infrastructure/envConfig/envConfig';
export default async () => {
const config: IDbClientEnvConfig = await EnvConfig.factory();
const [
databasePassword,
databasePort,
databaseHost,
databaseName,
databaseUser,
environment,
] = [
config.getDatabasePassword(),
config.getDatabasePort(),
config.getDatabaseHost(),
config.getDatabaseName(),
config.getDatabaseUser(),
config.getEnvironment(),
];
return {
client: 'pg',
connection: {
host: databaseHost,
port: databasePort,
user: databaseUser,
password: databasePassword,
database: databaseName,
ssl: environment === 'production',
},
migrations: {
directory: './src/infrastructure/database/migrations',
},
};
};