UNPKG

1.02 kBJavaScriptView Raw
1#!/usr/bin/env node
2'use strict';
3
4const path = require('path');
5
6// Create MIO object
7global.mio = {};
8
9// Detect root path
10mio.appPath = path.dirname(require.main.filename);
11
12// Init config
13const config = require('./services/config')().get();
14if(!global.mio.config){
15 global.mio.config = config;
16}
17
18// Include utils
19var mio = require('./utils/utils');
20
21// Init Services Runner
22const service = require('./services/moduleComposer');
23
24// Start Server
25mio.server = function(options){
26 // Init MongoDB
27 if(options && options.mongoose){
28 require('./services/mongoose').init(options.mongoose);
29 }
30
31 // Run cluster
32 require('./services/cluster').init();
33};
34
35// Start Module as a Service
36mio.service = function(serviceName, options){
37 return service.start(serviceName, options);
38};
39
40// List available modules
41mio.listServices = function(){
42 return service.listExternalModules();
43};
44
45// Init Mongoose only
46mio.initMongo = function(mongoose){
47 require('./services/mongoose').init(mongoose);
48};
49
50module.exports = mio;