-
Notifications
You must be signed in to change notification settings - Fork 0
/
cmm.js
executable file
·41 lines (38 loc) · 1.51 KB
/
cmm.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/env node
'use strict';
var fs = require("fs-extra");
var path = require("path");
var yargs = require("yargs");
var argv = yargs
.command("fn", "internal functions",
function (yargs) {
var fnDir = "./lib/cmm/fn"
var fnFiles = fs.readdirSync(fnDir);
fnFiles.forEach(function(file){
var module_ = path.join(fnDir,file);
var name = path.basename(file,".js");
var obj = require("./" + module_);
yargs
.command(name,name,
function(yargs) {
yargs
.option("src", {describe: "source dir"})
.option("dst", {describe: "destination dir"})
.option("config", {describe: "configs for command"})
.option("config-file", {describe: "config file for command"});
}
,
function(argv) {
obj.action(argv.src,argv.dst,argv.config);
});
})
return yargs;
},
function (argv) {
console.log(argv);
}
)
.help()
.argv;
console.log(process.argv);
console.log(argv);