DocSpace-buildtools/common/ASC.Socket.IO/config/index.js
2022-03-05 16:41:18 +03:00

43 lines
1.3 KiB
JavaScript

const nconf = require('nconf');
const path = require('path');
const fs = require("fs");
nconf.argv()
.env()
.file("config", path.join(__dirname, 'config.json'));
getAndSaveAppsettings();
module.exports = nconf;
function getAndSaveAppsettings(){
var appsettings = nconf.get("appsettings");
var env = nconf.get("environment");
var valueEnv = nconf.get(env);
var fileWithEnv = path.join(__dirname, appsettings, 'appsettings.' + valueEnv + '.json');
if(fs.existsSync(fileWithEnv)){
nconf.file("appsettings", fileWithEnv);
}
else{
nconf.file("appsettings", path.join(__dirname, appsettings, 'appsettings.json'));
}
nconf.file("appsettingsServices", path.join(__dirname, appsettings, 'appsettings.services.json'));
var redisWithEnv = path.join(__dirname, appsettings, 'redis.' + valueEnv + '.json');
if(fs.existsSync(fileWithEnv)){
nconf.file("redis", redisWithEnv);
}
else{
nconf.file("redis", path.join(__dirname, appsettings, 'redis.json'));
}
var hosts = nconf.get("Redis").Hosts;
var redis = nconf.get("redis");
if(hosts && hosts.count > 0)
{
redis.host = hosts[0].Host;
redis.port = hosts[0].Port;
nconf.set("redis", redis);
}
}