UNPKG

mcms-node-framework

Version:

the mcms-node framwork

68 lines (49 loc) 1.65 kB
var colors = require('colors'); var OS = require("os"); var path = require('path'); var environments = require('./environments'); var configLoader = require("mcms-node-config-loader").setEnv(environments); var Config = configLoader.loadConfig(path.join(__dirname,'./App/Config')); Config.baseDir = path.join(__dirname,'./'); Config.env = configLoader.detectedEnv; Config.environments = environments; var events = require('events'); var Event = new events.EventEmitter(); var App = { CLI : true, Config : Config, Connections : {}, Services : {}, Controllers : {}, Event : Event }; var Mcms = require("mcms-node-core")(App); var argv = require('minimist')(process.argv.slice(2)); var Command = Mcms.Command(App); require('./bootstrap')(Mcms,App); App.User = Mcms.User; //Register serviceProviders App.serviceProviders = Mcms.serviceProvider; App.serviceProviders.registerProvider(App.Config.app.serviceProviders); if (typeof argv['_'][0] == 'undefined' || argv['_'][0] == null){ //show all commands console.log(colors.yellow('Available commands')); for (var a in App.commands){ console.log(colors.green(a) + ' :: ' + App.commands[a].description); } process.exit(); } var command = argv['_'][0]; if (!Command.locate(command)){ console.log(colors.red('Command not found')); process.exit(); } command = App.commands[command]; command.options = argv; command.fire(function(err,res){ if (err){ console.log(colors.red(err)); process.exit(); } console.log(res); process.exit(); });