UNPKG

794 BJavaScriptView Raw
1'use strict';
2const path = require('path');
3const fs = require('fs');
4
5function requireConfig(name) {
6 const configPath = path.resolve(`./config/config.${name}.js`);
7 if (!fs.existsSync(configPath)) { return {}; }
8
9 let config = require(configPath);
10 // FIXME: config init with function need send appInfo argument.
11 if ((typeof config) === 'function') { config = config({}); }
12 return config.sequelize || {};
13}
14
15const defaultConfig = requireConfig('default');
16const localConfig = requireConfig('local');
17const unittestConfig = requireConfig('unittest');
18const prodConfig = requireConfig('prod');
19
20module.exports = {
21 development: Object.assign(defaultConfig, localConfig),
22 test: Object.assign(defaultConfig, unittestConfig),
23 production: Object.assign(defaultConfig, prodConfig),
24};
25