maestro-server/audit-app

View on GitHub
app/app.js

Summary

Maintainability
A
0 mins
Test Coverage
'use strict';

require('app-module-path').addPath(`${__dirname}/`); //make more realiable to call modules

const express = require('express');
const kraken = require('kraken-js');

const db_connect = require('core/libs/db_run');
const dbpath = require('core/libs/dbpath')();
const dbname = require('core/libs/dbname')();
const Connector = require('core/repositories/daos/connector/connector');

/*
 * Create and configure application. Also exports application instance for use by tests.
 * See https://github.com/krakenjs/kraken-js#options for additional configuration options.
 */
const options = {
    onconfig: function (config, next) {
        /*
         * Add any additional config setup or overrides here. `config` is an initialized
         * `confit` (https://github.com/krakenjs/confit/) configuration object.
         */

        db_connect(function *() {
            yield Connector.connect(dbpath, dbname);
            next(null, config);
            console.log("Maestro: Mongo online");
        });
    }
};

const app = module.exports = express();

app.use(kraken(options));


app.on('start', function () {
    console.log('Maestro: Application ready to serve requests. -- Environment: %s', app.kraken.get('env:env'));
});