UNPKG

1.15 kBJavaScriptView Raw
1/* uba
2 * @Author: Kvkens(yueming@yonyou.com)
3 * @Date: 2017-5-15 00:00:00
4 * @Last Modified by: Kvkens
5 * @Last Modified time: 2018-01-27 22:54:24
6 */
7var os = require("os");
8var fs = require("fs");
9var chalk = require("chalk");
10var argv = require("minimist")(process.argv.slice(2));
11var commands = argv._;
12var util = require("./util");
13
14//强制第一时间检查node版本,低版本不兼容
15util.checkNodeVersion(6);
16
17//检测输入命令集合参数
18if (commands.length === 0) {
19 //无参数传递 eg. uba
20 if (argv.version || argv.v) {
21 util.getVersion();
22 }
23 //显示帮助
24 util.getHelp();
25} else {
26 //当有参数传递 eg. uba server
27 //获得uba运行时的一些参数用于传递给插件使用
28 let opts = {
29 cmd: commands,
30 argv: argv,
31 name: require("../package.json").name
32 };
33
34 //检测调用的插件是否存在?不存在给出警告
35 let pluginPath = util.findPluginPath(commands[0]);
36 if (pluginPath) {
37 if (require(`uba-${commands[0]}`).plugin) {
38 require(`uba-${commands[0]}`).plugin(opts);
39 } else {
40 console.log(chalk.red(" Error : Plugin internal error."));
41 }
42 }
43}