/* * 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, cfg: require(__dirname+'/bin/config') }; global['__dirname'] = __dirname; /** * load modules */ let load = global['requireModule'] = (name) => { return require(__dirname+'/bin/'+name+'/module'); }; // environment variable check let env_vars = ["DB_URL", "DB_NAME", "SESSION_KEY", "COOKIE_KEY"]; let env_missing = false; env_vars.forEach((el) => { if(typeof process.env[el] == 'undefined') { console.error("environment variable "+el+" is not set"); env_missing = true; } }); if(env_missing) process.exit(); load('events'); // event handler global['logs'] = load('logs'); // log handler let web = load('web'); // web server web.start(); // start web server