tantrum
Version:
Hapi plugin for application configuration
46 lines (35 loc) • 769 B
JavaScript
var _ = require('lodash');
var confit = require('confit');
function tantrum(server, opts, done) {
if (opts === undefined) opts = {};
var config = confit({
basedir: opts.basedir,
protocols: opts.protocols
});
_.forEach(opts.defaults, function (def) {
config.addDefault(def);
});
_.forEach(opts.overrides, function (def) {
config.addOverride(def);
});
config.create(function (err, config) {
if (err) {
done(err);
return;
}
server.expose('config', function (key, val) {
if (val == null) {
return config.get(key);
}
config.set(key, val);
});
done();
});
}
tantrum.attributes = {
pkg: require('./package.json')
};
module.exports = {
register: tantrum
};
;