committed by
mrugesh mohapatra
parent
35a290f8fa
commit
020a25bb4f
@ -10,17 +10,17 @@ if (process.env.OPBEAT_ID) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
var _ = require('lodash'),
|
const _ = require('lodash');
|
||||||
Rx = require('rx'),
|
const Rx = require('rx');
|
||||||
loopback = require('loopback'),
|
const loopback = require('loopback');
|
||||||
boot = require('loopback-boot'),
|
const boot = require('loopback-boot');
|
||||||
expressState = require('express-state'),
|
const expressState = require('express-state');
|
||||||
path = require('path'),
|
const path = require('path');
|
||||||
setupPassport = require('./component-passport');
|
const setupPassport = require('./component-passport');
|
||||||
|
|
||||||
Rx.config.longStackSupport = process.env.NODE_DEBUG !== 'production';
|
Rx.config.longStackSupport = process.env.NODE_DEBUG !== 'production';
|
||||||
var app = loopback();
|
const app = loopback();
|
||||||
var isBeta = !!process.env.BETA;
|
const isBeta = !!process.env.BETA;
|
||||||
|
|
||||||
expressState.extend(app);
|
expressState.extend(app);
|
||||||
app.set('state namespace', '__fcc__');
|
app.set('state namespace', '__fcc__');
|
||||||
@ -37,8 +37,10 @@ boot(app, {
|
|||||||
|
|
||||||
setupPassport(app);
|
setupPassport(app);
|
||||||
|
|
||||||
|
const { db } = app.datasources;
|
||||||
|
db.on('connected', _.once(() => console.log('db connected')));
|
||||||
app.start = _.once(function() {
|
app.start = _.once(function() {
|
||||||
app.listen(app.get('port'), function() {
|
const server = app.listen(app.get('port'), function() {
|
||||||
app.emit('started');
|
app.emit('started');
|
||||||
console.log(
|
console.log(
|
||||||
'freeCodeCamp server listening on port %d in %s',
|
'freeCodeCamp server listening on port %d in %s',
|
||||||
@ -48,6 +50,23 @@ app.start = _.once(function() {
|
|||||||
if (isBeta) {
|
if (isBeta) {
|
||||||
console.log('freeCodeCamp is in beta mode');
|
console.log('freeCodeCamp is in beta mode');
|
||||||
}
|
}
|
||||||
|
console.log(`connecting to db at ${db.settings.url}`);
|
||||||
|
});
|
||||||
|
|
||||||
|
process.on('SIGINT', () => {
|
||||||
|
console.log('Shutting down server');
|
||||||
|
server.close(() => {
|
||||||
|
console.log('Server is closed');
|
||||||
|
});
|
||||||
|
console.log('closing db connection');
|
||||||
|
db.disconnect()
|
||||||
|
.then(() => {
|
||||||
|
console.log('DB connection closed');
|
||||||
|
// exit process
|
||||||
|
// this may close kept alive sockets
|
||||||
|
// eslint-disable-next-line no-process-exit
|
||||||
|
process.exit(0);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user