/* * This file is part of the authRXBN single sign-on package. * * (c) Ruben Meyer */ // GDS: Global Data System global['gds'] = { debug: (process.env.NODE_ENV === 'debug') ? true : false, db: null, cache: {}, cfg: require(__dirname+'/bin/config') }; global['modules'] = {}; global['__dirname'] = __dirname; /** * load modules */ let load = (name) => { return require(__dirname+'/bin/'+name+'/module'); }; // environment variable check if(typeof process.env.DB_URL == 'undefined' || typeof process.env.DB_NAME == 'undefined') { if(typeof process.env.DB_URL == 'undefined') console.error("environment variable DB_URL is not set"); if(typeof process.env.DB_NAME == 'undefined') console.error("environment variable DB_NAME is not set"); process.exit(); } global['modules'].events = load('events'); // event handler global['modules'].cli = load('cli'); // command line interface global['modules'].logs = load('logs'); // log handler global['modules'].database = load('database'); // database service global['modules'].web = load('web'); // web server global['modules'].auth = load('auth'); // authentication handler // start web server global['modules'].web.start();