diff --git a/src/nconf_load_env.js b/src/nconf_load_env.js new file mode 100644 index 0000000..2d8e447 --- /dev/null +++ b/src/nconf_load_env.js @@ -0,0 +1,41 @@ +const env_whitelist = [ "CONTROL_PORT", + "TOR_PATH", + "INSTANCES", + "SOCKS_PORT", + "DNS_PORT", + "HTTP_PORT", + "LOG_LEVEL", + 'PARENT_DATA_DIRECTORIES', + 'LOAD_BALANCE_METHOD', + "controlPort", + "torPath", + "instances", + "socksPort", + "dnsPort", + "httpPort", + "logLevel", + 'parentDataDirectories', + 'loadBalanceMethod' + ]; + +module.exports = (nconf) => { + return nconf + .env({ + whitelist: env_whitelist, + parseValues: true, + transform: (obj) => { + if (env_whitelist.includes(obj.key)) { + if (obj.key.indexOf('_') !== -1) { + let a = obj.key.toLowerCase().split('_'); + i = 1; + while (i < a.length) { + a[i] = a[i][0].toUpperCase() + a[i].substr(1); + i++; + } + obj.key = a.join(''); + } + } + return obj; + } + }); +}; \ No newline at end of file