1
0
Fork 0
auth.rxbn.de/app.js

35 lines
843 B
JavaScript

/*
* This file is part of the authRXBN single sign-on package.
*
* (c) Ruben Meyer <contact@rxbn.de>
*/
global['debug'] = (process.env.NODE_ENV === 'debug') ? true : false;
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", "PROMETHEUS_USER", "PROMETHEUS_PW"];
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