nyx_server
Version:
Node内容发布
51 lines (38 loc) • 1.5 kB
JavaScript
/* global process */
var config = require("../config/default-config");
var log4js = require("log4js");
var log = log4js.getLogger("nyx online");
var mkdirp = require("mkdirp");
var Optimist = require("../optimist/optimist");
var help = require("../optimist/help");
var optimist = new Optimist();
var _online = require("../core/admin/Online");
var projects_cache_path = config.projects_cache_path;
log.debug("项目安装路径 : " + projects_cache_path);
mkdirp.sync(projects_cache_path);
optimist
.info('项目上线')
.usage('nyx online [--project projectName --gitrepo gitpath --version version]')
.define("project").type("string").describe('项目名称').require(true)
.define("version").type("string").describe('项目版本').require(true)
.define("gitrepo").type("string").describe('项目git地址').require(true);
var argv = optimist.getArgv();
function Online(){}
Online.prototype.execute = function(){
var argvAnalysis = optimist.analysis;
if (argvAnalysis.options.hasOwnProperty('help') || argvAnalysis.shortKeys.hasOwnProperty('h')) {
help.detailed(optimist);
process.exit(1);
}
var projectName = argv.project;
var version = argv.version;
var gitrepo = argv.gitrepo;
return _online(projectName , gitrepo , version , projects_cache_path);
};
Online.prototype.showhelp = function(){
help.detailed(optimist);
};
Online.prototype.optimist = function() {
return optimist;
};
module.exports = new Online();