2020-08-21 15:11:15 +00:00
|
|
|
import {IConfig} from 'config';
|
2020-08-24 14:18:10 +00:00
|
|
|
import {IAaveConfiguration, IUniswapConfiguration} from './types';
|
2020-08-21 15:11:15 +00:00
|
|
|
|
2020-08-24 14:18:10 +00:00
|
|
|
let config: IAaveConfiguration | IUniswapConfiguration;
|
2020-08-21 15:11:15 +00:00
|
|
|
|
|
|
|
// This function swaps NODE_ENV during the 'config' library load, to load custom config files, then keeps NODE_ENV like before.
|
2020-08-24 14:18:10 +00:00
|
|
|
export const loadConfig = (): IAaveConfiguration | IUniswapConfiguration => {
|
2020-08-21 15:11:15 +00:00
|
|
|
if (config) {
|
|
|
|
return config;
|
|
|
|
}
|
|
|
|
const currentNodeEnv = process.env.NODE_ENV;
|
|
|
|
|
|
|
|
process.env.NODE_ENV = process.env.POOL;
|
|
|
|
const configuration = require('config');
|
|
|
|
process.env.NODE_ENV = currentNodeEnv;
|
|
|
|
|
|
|
|
config = configuration;
|
|
|
|
|
|
|
|
return config;
|
|
|
|
};
|