1
0
Fork 0
mirror of https://github.com/mmumshad/ansible-playable.git synced 2025-02-13 02:21:59 +00:00
ansible-playable/server/app.js
2017-07-11 11:58:56 -04:00

42 lines
1.2 KiB
JavaScript

/**
* Main application file
*/
'use strict';
import express from 'express';
import mongoose from 'mongoose';
mongoose.Promise = require('bluebird');
import config from './config/environment';
import http from 'http';
import seedDatabaseIfNeeded from './config/seed';
const logger = require('./components/logger/logger');
// Connect to MongoDB
mongoose.connect(config.mongo.uri, config.mongo.options);
mongoose.connection.on('error', function(err) {
console.error(`MongoDB connection error: ${err}`);
process.exit(-1); // eslint-disable-line no-process-exit
});
// Setup server
var app = express();
var server = http.createServer(app);
require('./config/express').default(app);
require('./routes').default(app);
// Start server
function startServer() {
app.angularFullstack = server.listen(config.port, config.ip, function() {
logger.info('\n');
logger.info('---------------------------------------------------------------');
logger.info('Express server listening on %d, in %s mode', config.port, app.get('env'));
logger.info('---------------------------------------------------------------\n');
});
}
seedDatabaseIfNeeded();
setImmediate(startServer);
// Expose app
exports = module.exports = app;