reload config on each poll
This commit is contained in:
parent
d5c69079d5
commit
7f14fb3adc
3 changed files with 19 additions and 5 deletions
12
lib/app.js
12
lib/app.js
|
|
@ -46,6 +46,17 @@ module.exports = function(options) {
|
||||||
|
|
||||||
app.use(express.bodyParser());
|
app.use(express.bodyParser());
|
||||||
|
|
||||||
|
var reloadConfigMiddleware = function(req, res, next) {
|
||||||
|
lamassuConfig.load(function(err, config) {
|
||||||
|
if (err) {
|
||||||
|
logger.error('Error while reloading config');
|
||||||
|
return next(err)
|
||||||
|
}
|
||||||
|
plugins.configure(config);
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
var authMiddleware;
|
var authMiddleware;
|
||||||
|
|
||||||
if (options.https) {
|
if (options.https) {
|
||||||
|
|
@ -91,6 +102,7 @@ module.exports = function(options) {
|
||||||
lamassuConfig: lamassuConfig,
|
lamassuConfig: lamassuConfig,
|
||||||
plugins: plugins,
|
plugins: plugins,
|
||||||
authMiddleware: authMiddleware,
|
authMiddleware: authMiddleware,
|
||||||
|
reloadConfigMiddleware: reloadConfigMiddleware,
|
||||||
mock: options.mock
|
mock: options.mock
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -119,6 +119,7 @@ function loadOrConfigPlugin(pluginHandle, pluginType, currency,
|
||||||
if (pluginHandle && !pluginChanged) pluginHandle.config(pluginConfig);
|
if (pluginHandle && !pluginChanged) pluginHandle.config(pluginConfig);
|
||||||
else {
|
else {
|
||||||
pluginHandle = loadPlugin(currentName, pluginConfig);
|
pluginHandle = loadPlugin(currentName, pluginConfig);
|
||||||
|
currentlyUsedPlugins[pluginType] = currentName
|
||||||
logger.debug('plugin(%s) loaded: %s', pluginType, pluginHandle.NAME ||
|
logger.debug('plugin(%s) loaded: %s', pluginType, pluginHandle.NAME ||
|
||||||
currentName);
|
currentName);
|
||||||
}
|
}
|
||||||
|
|
@ -183,7 +184,7 @@ exports.configure = function configure(config) {
|
||||||
'info'
|
'info'
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
exports.getCachedConfig = function getCachedConfig() {
|
exports.getConfig = function getConfig() {
|
||||||
return cachedConfig;
|
return cachedConfig;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -210,7 +211,7 @@ function buildCartridges(cartridges, virtualCartridges, rec) {
|
||||||
|
|
||||||
exports.pollQueries = function pollQueries(session, cb) {
|
exports.pollQueries = function pollQueries(session, cb) {
|
||||||
var cartridges = cachedConfig.exchanges.settings.cartridges;
|
var cartridges = cachedConfig.exchanges.settings.cartridges;
|
||||||
if (!cartridges) return null;
|
if (!cartridges) return cb(null, {});
|
||||||
var virtualCartridges = cachedConfig.exchanges.settings.virtualCartridges;
|
var virtualCartridges = cachedConfig.exchanges.settings.virtualCartridges;
|
||||||
|
|
||||||
db.cartridgeCounts(session, function(err, result) {
|
db.cartridgeCounts(session, function(err, result) {
|
||||||
|
|
|
||||||
|
|
@ -51,7 +51,7 @@ function poll(req, res) {
|
||||||
return res.json({err: 'No balance available'});
|
return res.json({err: 'No balance available'});
|
||||||
}
|
}
|
||||||
|
|
||||||
var config = plugins.getCachedConfig();
|
var config = plugins.getConfig();
|
||||||
var settings = config.exchanges.settings;
|
var settings = config.exchanges.settings;
|
||||||
var complianceSettings = settings.compliance;
|
var complianceSettings = settings.compliance;
|
||||||
var fiatCommission = settings.fiatCommission || settings.commission;
|
var fiatCommission = settings.fiatCommission || settings.commission;
|
||||||
|
|
@ -183,9 +183,10 @@ function init(localConfig) {
|
||||||
mock = localConfig.mock;
|
mock = localConfig.mock;
|
||||||
|
|
||||||
var authMiddleware = localConfig.authMiddleware;
|
var authMiddleware = localConfig.authMiddleware;
|
||||||
|
var reloadConfigMiddleware = localConfig.reloadConfigMiddleware;
|
||||||
var app = localConfig.app;
|
var app = localConfig.app;
|
||||||
|
|
||||||
app.get('/poll', authMiddleware, poll);
|
app.get('/poll', authMiddleware, reloadConfigMiddleware, poll);
|
||||||
|
|
||||||
app.post('/trade', authMiddleware, trade);
|
app.post('/trade', authMiddleware, trade);
|
||||||
app.post('/send', authMiddleware, send);
|
app.post('/send', authMiddleware, send);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue