You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
545 B
JavaScript
21 lines
545 B
JavaScript
const fs = require('fs');
|
|
const os = require('os');
|
|
const path = require('path');
|
|
const { defaults } = require('lodash');
|
|
|
|
let options = {
|
|
name: 'hydro',
|
|
host: '127.0.0.1',
|
|
port: 27017,
|
|
username: '',
|
|
password: '',
|
|
};
|
|
|
|
let f = path.resolve(process.cwd(), 'config.json');
|
|
if (!fs.existsSync(f)) f = path.resolve(os.homedir(), '.config', 'hydro', 'config.json');
|
|
if (!fs.existsSync(f)) f = path.resolve('/config/config.json');
|
|
const t = JSON.parse(fs.readFileSync(f));
|
|
options = defaults(t, options);
|
|
|
|
module.exports = options;
|