62 lines
1.6 KiB
JavaScript
Executable file
62 lines
1.6 KiB
JavaScript
Executable file
#!/usr/bin/env node
|
|
/*jslint node: true */
|
|
'use strict';
|
|
|
|
// Dirty hack to allow usage of angular modules.
|
|
global.angular = require('ng-di');
|
|
|
|
angular.module('ffffng', []);
|
|
|
|
(function () {
|
|
// Use graceful-fs instead of fs also in all libraries to have more robust fs handling.
|
|
var realFs = require('fs');
|
|
var gracefulFs = require('graceful-fs');
|
|
gracefulFs.gracefulify(realFs);
|
|
})();
|
|
|
|
require('./config');
|
|
|
|
require('./logger').tag('main', 'startup').info('Server starting up...');
|
|
|
|
require('./app');
|
|
require('./router');
|
|
require('./libs');
|
|
|
|
require('./utils/databaseUtil');
|
|
require('./utils/errorTypes');
|
|
require('./utils/resources');
|
|
require('./utils/strings');
|
|
require('./utils/urlBuilder');
|
|
|
|
require('./resources/versionResource');
|
|
require('./resources/statisticsResource');
|
|
require('./resources/frontendResource');
|
|
require('./resources/taskResource');
|
|
require('./resources/mailResource');
|
|
require('./resources/nodeResource');
|
|
require('./resources/monitoringResource');
|
|
|
|
require('./services/mailService');
|
|
require('./services/mailTemplateService');
|
|
require('./services/nodeService');
|
|
require('./services/monitoringService');
|
|
|
|
require('../shared/validation/constraints');
|
|
require('./validation/validator');
|
|
|
|
require('./jobs/scheduler');
|
|
|
|
var db = require('./db/database');
|
|
|
|
db.init(function () {
|
|
angular.injector(['ffffng']).invoke(function (config, app, Logger, Scheduler, Router) {
|
|
Logger.tag('main').info('Initializing...');
|
|
|
|
Scheduler.init();
|
|
Router.init();
|
|
|
|
app.listen(config.server.port, '::');
|
|
module.exports = app;
|
|
});
|
|
});
|