-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathserver.js
36 lines (30 loc) · 957 Bytes
/
server.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
'use strict';
var config = require('config');
var log = require('./lib/log');
var express = require('express');
var path = require('path');
var app = express();
var api = require('./api/index');
var bodyParser = require('body-parser')
app.set('views', path.resolve(__dirname, './views'));
app.engine('ejs', require('ejs').__express);
app.use('/static', express.static(__dirname + '/static'));
app.get('/', function(req, res) {
res.render('index.ejs', {});
});
app.use(bodyParser.json());
app.get('/servers', api.get);
app.use(express.static('public'));
var server = app.listen(config.get('express.port'));
log.info('Started express server on ' + config.get('express.port'));
function shutdown(){
server.close(function() {
log.info('Closed remaining http connections.');
process.exit()
});
}
process.on('uncaughtException', function errCb(err){
log.error('Got uncaught exception: ' + err.stack);
shutdown();
});
module.exports = app;