diff --git a/dist/index.js b/dist/index.js index 1479022..7288b75 100644 --- a/dist/index.js +++ b/dist/index.js @@ -19,59 +19,56 @@ var npmci_install_2 = require("./npmci.install"); exports.install = npmci_install_2.install; var npmci_publish_2 = require("./npmci.publish"); exports.publish = npmci_publish_2.publish; -var command; -var commandOption; -var commander = plugins.commander - .option("-v", "--version", "print version") - .arguments(' [commandoptionarg]') - .action(function (commandarg, commandoptionarg) { - command = commandarg; - commandOption = commandoptionarg; +var smartcli = new plugins.smartcli.Smartcli(); +smartcli.addVersion(npmciInfo.version); +// build +smartcli.addCommand({ + commandName: "build" +}).then(function (argv) { + npmci_build_1.build(argv._[1]) + .then(NpmciEnv.configStore); }); -plugins.commander.parse(process.argv); -if (commander.version) { - console.log(npmciInfo.version); - process.exit(0); -} -if (typeof command === 'undefined') { - console.error('no command given!'); - process.exit(1); -} -switch (command) { - case "build": - npmci_build_1.build(commandOption) - .then(NpmciEnv.configStore); - break; - case "command": - npmci_command_1.command() - .then(NpmciEnv.configStore); - break; - case "install": - npmci_install_1.install(commandOption) - .then(NpmciEnv.configStore); - ; - break; - case "prepare": - npmci_prepare_1.prepare(commandOption) - .then(NpmciEnv.configStore); - ; - break; - case "publish": - npmci_publish_1.publish(commandOption) - .then(NpmciEnv.configStore); - ; - break; - case "test": - npmci_test_1.test(commandOption) - .then(NpmciEnv.configStore); - break; - case "trigger": - npmci_trigger_1.trigger(); - break; - default: - plugins.beautylog.error("command " + commandOption.blue + " not recognised"); - process.exit(1); - break; -} +// command +smartcli.addCommand({ + commandName: "command" +}).then(function (argv) { + npmci_command_1.command() + .then(NpmciEnv.configStore); +}); +// install +smartcli.addCommand({ + commandName: "install" +}).then(function (argv) { + npmci_install_1.install(argv._[1]) + .then(NpmciEnv.configStore); +}); +// prepare +smartcli.addCommand({ + commandName: "prepare" +}).then(function (argv) { + npmci_prepare_1.prepare(argv._[1]) + .then(NpmciEnv.configStore); +}); +// publish +smartcli.addCommand({ + commandName: "publish" +}).then(function (argv) { + npmci_publish_1.publish(argv._[1]) + .then(NpmciEnv.configStore); +}); +// test +smartcli.addCommand({ + commandName: "test" +}).then(function (argv) { + npmci_test_1.test(argv._[1]) + .then(NpmciEnv.configStore); +}); +// trigger +smartcli.addCommand({ + commandName: "trigger" +}).then(function (argv) { + npmci_trigger_1.trigger(); +}); +smartcli.startParse(); -//# sourceMappingURL=data:application/json;charset=utf8;base64,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UUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQUEsQ0FBQztRQUNqQyxLQUFLLENBQUM7SUFDVixLQUFLLE1BQU07UUFDUCxpQkFBSSxDQUFDLGFBQWEsQ0FBQzthQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDaEMsS0FBSyxDQUFDO0lBQ1YsS0FBSyxTQUFTO1FBQ1YsdUJBQU8sRUFBRSxDQUFDO1FBQ1YsS0FBSyxDQUFDO0lBQ1Y7UUFDSSxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsYUFBYSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzdFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEIsS0FBSyxDQUFDO0FBQ2QsQ0FBQyIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCBcInR5cGluZ3MtZ2xvYmFsXCI7XG5pbXBvcnQgKiBhcyBwbHVnaW5zIGZyb20gXCIuL25wbWNpLnBsdWdpbnNcIjtcbmltcG9ydCAqIGFzIHBhdGhzIGZyb20gXCIuL25wbWNpLnBhdGhzXCI7XG5sZXQgbnBtY2lJbmZvID0gbmV3IHBsdWdpbnMucHJvamVjdGluZm8uUHJvamVjdGluZm9OcG0ocGF0aHMuTnBtY2lQYWNrYWdlUm9vdCk7XG5wbHVnaW5zLmJlYXV0eWxvZy5sb2coXCJucG1jaSB2ZXJzaW9uOiBcIiArIG5wbWNpSW5mby52ZXJzaW9uKTtcblxuaW1wb3J0IHtidWlsZH0gZnJvbSBcIi4vbnBtY2kuYnVpbGRcIlxuaW1wb3J0IHtjb21tYW5kIGFzIGNvbW1hbmQyfSBmcm9tIFwiLi9ucG1jaS5jb21tYW5kXCI7XG5pbXBvcnQge2luc3RhbGx9IGZyb20gXCIuL25wbWNpLmluc3RhbGxcIjtcbmltcG9ydCB7cHVibGlzaH0gZnJvbSBcIi4vbnBtY2kucHVibGlzaFwiO1xuaW1wb3J0IHtwcmVwYXJlfSBmcm9tIFwiLi9ucG1jaS5wcmVwYXJlXCI7XG5pbXBvcnQge3RhZywgcmV0YWd9IGZyb20gXCIuL25wbWNpLnRhZ1wiO1xuaW1wb3J0IHt0ZXN0fSBmcm9tIFwiLi9ucG1jaS50ZXN0XCI7XG5pbXBvcnQge3RyaWdnZXJ9IGZyb20gXCIuL25wbWNpLnRyaWdnZXJcIjtcbmltcG9ydCAqIGFzIE5wbWNpRW52IGZyb20gXCIuL25wbWNpLmVudlwiO1xuXG5leHBvcnQge2J1aWxkfSBmcm9tIFwiLi9ucG1jaS5idWlsZFwiXG5leHBvcnQge2luc3RhbGx9IGZyb20gXCIuL25wbWNpLmluc3RhbGxcIjtcbmV4cG9ydCB7cHVibGlzaH0gZnJvbSBcIi4vbnBtY2kucHVibGlzaFwiO1xuXG5sZXQgY29tbWFuZDtcbmxldCBjb21tYW5kT3B0aW9uOnN0cmluZztcblxubGV0IGNvbW1hbmRlciA9IHBsdWdpbnMuY29tbWFuZGVyXG4gICAgLm9wdGlvbihcIi12XCIsXCItLXZlcnNpb25cIixcInByaW50IHZlcnNpb25cIilcbiAgICAuYXJndW1lbnRzKCc8Y29tbWFuZGFyZz4gW2NvbW1hbmRvcHRpb25hcmddJylcbiAgICAuYWN0aW9uKGZ1bmN0aW9uIChjb21tYW5kYXJnLCBjb21tYW5kb3B0aW9uYXJnKSB7XG4gICAgICAgIGNvbW1hbmQgPSBjb21tYW5kYXJnO1xuICAgICAgICBjb21tYW5kT3B0aW9uID0gY29tbWFuZG9wdGlvbmFyZztcbiAgICB9KTtcbiBcbnBsdWdpbnMuY29tbWFuZGVyLnBhcnNlKHByb2Nlc3MuYXJndik7XG5cbmlmKGNvbW1hbmRlci52ZXJzaW9uKSB7XG4gICAgY29uc29sZS5sb2cobnBtY2lJbmZvLnZlcnNpb24pO1xuICAgIHByb2Nlc3MuZXhpdCgwKTtcbn1cblxuaWYgKHR5cGVvZiBjb21tYW5kID09PSAndW5kZWZpbmVkJykge1xuICAgIGNvbnNvbGUuZXJyb3IoJ25vIGNvbW1hbmQgZ2l2ZW4hJyk7XG4gICAgcHJvY2Vzcy5leGl0KDEpO1xufVxuXG5zd2l0Y2ggKGNvbW1hbmQpe1xuICAgIGNhc2UgXCJidWlsZFwiOlxuICAgICAgICBidWlsZChjb21tYW5kT3B0aW9uKVxuICAgICAgICAgICAgLnRoZW4oTnBtY2lFbnYuY29uZmlnU3RvcmUpO1xuICAgICAgICBicmVhaztcbiAgICBjYXNlIFwiY29tbWFuZFwiOlxuICAgICAgICBjb21tYW5kMigpXG4gICAgICAgICAgICAudGhlbihOcG1jaUVudi5jb25maWdTdG9yZSk7XG4gICAgICAgIGJyZWFrO1xuICAgIGNhc2UgXCJpbnN0YWxsXCI6XG4gICAgICAgIGluc3RhbGwoY29tbWFuZE9wdGlvbilcbiAgICAgICAgICAgIC50aGVuKE5wbWNpRW52LmNvbmZpZ1N0b3JlKTs7XG4gICAgICAgIGJyZWFrO1xuICAgIGNhc2UgXCJwcmVwYXJlXCI6XG4gICAgICAgIHByZXBhcmUoY29tbWFuZE9wdGlvbilcbiAgICAgICAgICAgIC50aGVuKE5wbWNpRW52LmNvbmZpZ1N0b3JlKTs7XG4gICAgICAgIGJyZWFrO1xuICAgIGNhc2UgXCJwdWJsaXNoXCI6XG4gICAgICAgIHB1Ymxpc2goY29tbWFuZE9wdGlvbilcbiAgICAgICAgICAgIC50aGVuKE5wbWNpRW52LmNvbmZpZ1N0b3JlKTs7XG4gICAgICAgIGJyZWFrO1xuICAgIGNhc2UgXCJ0ZXN0XCI6XG4gICAgICAgIHRlc3QoY29tbWFuZE9wdGlvbilcbiAgICAgICAgICAgIC50aGVuKE5wbWNpRW52LmNvbmZpZ1N0b3JlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgY2FzZSBcInRyaWdnZXJcIjpcbiAgICAgICAgdHJpZ2dlcigpO1xuICAgICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgICBwbHVnaW5zLmJlYXV0eWxvZy5lcnJvcihcImNvbW1hbmQgXCIgKyBjb21tYW5kT3B0aW9uLmJsdWUgKyBcIiBub3QgcmVjb2duaXNlZFwiKTtcbiAgICAgICAgcHJvY2Vzcy5leGl0KDEpO1xuICAgICAgICBicmVhaztcbn1cblxuIl19 +//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsUUFBTyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ3hCLElBQVksT0FBTyxXQUFNLGlCQUFpQixDQUFDLENBQUE7QUFDM0MsSUFBWSxLQUFLLFdBQU0sZUFBZSxDQUFDLENBQUE7QUFDdkMsSUFBSSxTQUFTLEdBQUcsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUMvRSxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7QUFFN0QsNEJBQW9CLGVBQ3BCLENBQUMsQ0FEa0M7QUFDbkMsOEJBQXNCLGlCQUFpQixDQUFDLENBQUE7QUFDeEMsOEJBQXNCLGlCQUFpQixDQUFDLENBQUE7QUFDeEMsOEJBQXNCLGlCQUFpQixDQUFDLENBQUE7QUFDeEMsOEJBQXNCLGlCQUFpQixDQUFDLENBQUE7QUFFeEMsMkJBQW1CLGNBQWMsQ0FBQyxDQUFBO0FBQ2xDLDhCQUFzQixpQkFBaUIsQ0FBQyxDQUFBO0FBQ3hDLElBQVksUUFBUSxXQUFNLGFBQWEsQ0FBQyxDQUFBO0FBRXhDLDRCQUFvQixlQUNwQixDQUFDO0FBRE8sb0NBQTJCO0FBQ25DLDhCQUFzQixpQkFBaUIsQ0FBQztBQUFoQywwQ0FBZ0M7QUFDeEMsOEJBQXNCLGlCQUFpQixDQUFDO0FBQWhDLDBDQUFnQztBQUd4QyxJQUFJLFFBQVEsR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7QUFDL0MsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7QUFFdkMsUUFBUTtBQUNSLFFBQVEsQ0FBQyxVQUFVLENBQUM7SUFDaEIsV0FBVyxFQUFDLE9BQU87Q0FDdEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFDLElBQUk7SUFDVCxtQkFBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDWCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ3BDLENBQUMsQ0FBQyxDQUFDO0FBRUgsVUFBVTtBQUNWLFFBQVEsQ0FBQyxVQUFVLENBQUM7SUFDaEIsV0FBVyxFQUFDLFNBQVM7Q0FDeEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFDLElBQUk7SUFDVCx1QkFBTyxFQUFFO1NBQ0osSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNwQyxDQUFDLENBQUMsQ0FBQztBQUVILFVBQVU7QUFDVixRQUFRLENBQUMsVUFBVSxDQUFDO0lBQ2hCLFdBQVcsRUFBQyxTQUFTO0NBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxJQUFJO0lBQ1QsdUJBQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNwQyxDQUFDLENBQUMsQ0FBQztBQUVILFVBQVU7QUFDVixRQUFRLENBQUMsVUFBVSxDQUFDO0lBQ2hCLFdBQVcsRUFBQyxTQUFTO0NBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxJQUFJO0lBQ1QsdUJBQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNwQyxDQUFDLENBQUMsQ0FBQztBQUVILFVBQVU7QUFDVixRQUFRLENBQUMsVUFBVSxDQUFDO0lBQ2hCLFdBQVcsRUFBQyxTQUFTO0NBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxJQUFJO0lBQ1QsdUJBQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNwQyxDQUFDLENBQUMsQ0FBQztBQUVILE9BQU87QUFDUCxRQUFRLENBQUMsVUFBVSxDQUFDO0lBQ2hCLFdBQVcsRUFBQyxNQUFNO0NBQ3JCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxJQUFJO0lBQ1QsaUJBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNwQyxDQUFDLENBQUMsQ0FBQztBQUVILFVBQVU7QUFDVixRQUFRLENBQUMsVUFBVSxDQUFDO0lBQ2hCLFdBQVcsRUFBQyxTQUFTO0NBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxJQUFJO0lBQ1QsdUJBQU8sRUFBRSxDQUFDO0FBQ2QsQ0FBQyxDQUFDLENBQUM7QUFFSCxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUMiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyIjIS91c3IvYmluL2VudiBub2RlXG5pbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xuaW1wb3J0ICogYXMgcGx1Z2lucyBmcm9tIFwiLi9ucG1jaS5wbHVnaW5zXCI7XG5pbXBvcnQgKiBhcyBwYXRocyBmcm9tIFwiLi9ucG1jaS5wYXRoc1wiO1xubGV0IG5wbWNpSW5mbyA9IG5ldyBwbHVnaW5zLnByb2plY3RpbmZvLlByb2plY3RpbmZvTnBtKHBhdGhzLk5wbWNpUGFja2FnZVJvb3QpO1xucGx1Z2lucy5iZWF1dHlsb2cubG9nKFwibnBtY2kgdmVyc2lvbjogXCIgKyBucG1jaUluZm8udmVyc2lvbik7XG5cbmltcG9ydCB7YnVpbGR9IGZyb20gXCIuL25wbWNpLmJ1aWxkXCJcbmltcG9ydCB7Y29tbWFuZH0gZnJvbSBcIi4vbnBtY2kuY29tbWFuZFwiO1xuaW1wb3J0IHtpbnN0YWxsfSBmcm9tIFwiLi9ucG1jaS5pbnN0YWxsXCI7XG5pbXBvcnQge3B1Ymxpc2h9IGZyb20gXCIuL25wbWNpLnB1Ymxpc2hcIjtcbmltcG9ydCB7cHJlcGFyZX0gZnJvbSBcIi4vbnBtY2kucHJlcGFyZVwiO1xuaW1wb3J0IHt0YWcsIHJldGFnfSBmcm9tIFwiLi9ucG1jaS50YWdcIjtcbmltcG9ydCB7dGVzdH0gZnJvbSBcIi4vbnBtY2kudGVzdFwiO1xuaW1wb3J0IHt0cmlnZ2VyfSBmcm9tIFwiLi9ucG1jaS50cmlnZ2VyXCI7XG5pbXBvcnQgKiBhcyBOcG1jaUVudiBmcm9tIFwiLi9ucG1jaS5lbnZcIjtcblxuZXhwb3J0IHtidWlsZH0gZnJvbSBcIi4vbnBtY2kuYnVpbGRcIlxuZXhwb3J0IHtpbnN0YWxsfSBmcm9tIFwiLi9ucG1jaS5pbnN0YWxsXCI7XG5leHBvcnQge3B1Ymxpc2h9IGZyb20gXCIuL25wbWNpLnB1Ymxpc2hcIjtcblxuXG5sZXQgc21hcnRjbGkgPSBuZXcgcGx1Z2lucy5zbWFydGNsaS5TbWFydGNsaSgpO1xuc21hcnRjbGkuYWRkVmVyc2lvbihucG1jaUluZm8udmVyc2lvbik7XG5cbi8vIGJ1aWxkXG5zbWFydGNsaS5hZGRDb21tYW5kKHtcbiAgICBjb21tYW5kTmFtZTpcImJ1aWxkXCJcbn0pLnRoZW4oKGFyZ3YpID0+IHtcbiAgICBidWlsZChhcmd2Ll9bMV0pXG4gICAgICAgIC50aGVuKE5wbWNpRW52LmNvbmZpZ1N0b3JlKTtcbn0pO1xuXG4vLyBjb21tYW5kXG5zbWFydGNsaS5hZGRDb21tYW5kKHtcbiAgICBjb21tYW5kTmFtZTpcImNvbW1hbmRcIlxufSkudGhlbigoYXJndikgPT4ge1xuICAgIGNvbW1hbmQoKVxuICAgICAgICAudGhlbihOcG1jaUVudi5jb25maWdTdG9yZSk7XG59KTtcblxuLy8gaW5zdGFsbFxuc21hcnRjbGkuYWRkQ29tbWFuZCh7XG4gICAgY29tbWFuZE5hbWU6XCJpbnN0YWxsXCJcbn0pLnRoZW4oKGFyZ3YpID0+IHtcbiAgICBpbnN0YWxsKGFyZ3YuX1sxXSlcbiAgICAgICAgLnRoZW4oTnBtY2lFbnYuY29uZmlnU3RvcmUpO1xufSk7XG5cbi8vIHByZXBhcmVcbnNtYXJ0Y2xpLmFkZENvbW1hbmQoe1xuICAgIGNvbW1hbmROYW1lOlwicHJlcGFyZVwiXG59KS50aGVuKChhcmd2KSA9PiB7XG4gICAgcHJlcGFyZShhcmd2Ll9bMV0pXG4gICAgICAgIC50aGVuKE5wbWNpRW52LmNvbmZpZ1N0b3JlKTtcbn0pO1xuXG4vLyBwdWJsaXNoXG5zbWFydGNsaS5hZGRDb21tYW5kKHtcbiAgICBjb21tYW5kTmFtZTpcInB1Ymxpc2hcIlxufSkudGhlbigoYXJndikgPT4ge1xuICAgIHB1Ymxpc2goYXJndi5fWzFdKVxuICAgICAgICAudGhlbihOcG1jaUVudi5jb25maWdTdG9yZSk7XG59KTtcblxuLy8gdGVzdFxuc21hcnRjbGkuYWRkQ29tbWFuZCh7XG4gICAgY29tbWFuZE5hbWU6XCJ0ZXN0XCJcbn0pLnRoZW4oKGFyZ3YpID0+IHtcbiAgICB0ZXN0KGFyZ3YuX1sxXSlcbiAgICAgICAgLnRoZW4oTnBtY2lFbnYuY29uZmlnU3RvcmUpO1xufSk7XG5cbi8vIHRyaWdnZXJcbnNtYXJ0Y2xpLmFkZENvbW1hbmQoe1xuICAgIGNvbW1hbmROYW1lOlwidHJpZ2dlclwiXG59KS50aGVuKChhcmd2KSA9PiB7XG4gICAgdHJpZ2dlcigpO1xufSk7XG5cbnNtYXJ0Y2xpLnN0YXJ0UGFyc2UoKTsiXX0= diff --git a/dist/npmci.plugins.d.ts b/dist/npmci.plugins.d.ts index 3badc06..f4199ff 100644 --- a/dist/npmci.plugins.d.ts +++ b/dist/npmci.plugins.d.ts @@ -1,6 +1,5 @@ import "typings-global"; export import beautylog = require("beautylog"); -export declare let commander: any; export declare let gulp: any; export declare let gulpFunction: any; export import path = require("path"); @@ -8,6 +7,7 @@ export import projectinfo = require("projectinfo"); export declare let q: any; export declare let request: any; export declare let shelljs: any; +export import smartcli = require("smartcli"); export import smartfile = require("smartfile"); export import smartparam = require("smartparam"); export import smartssh = require("smartssh"); diff --git a/dist/npmci.plugins.js b/dist/npmci.plugins.js index 6dd26be..6121ef6 100644 --- a/dist/npmci.plugins.js +++ b/dist/npmci.plugins.js @@ -1,7 +1,6 @@ "use strict"; require("typings-global"); exports.beautylog = require("beautylog"); -exports.commander = require("commander"); exports.gulp = require("gulp"); exports.gulpFunction = require("gulp-function"); exports.path = require("path"); @@ -9,10 +8,11 @@ exports.projectinfo = require("projectinfo"); exports.q = require("q"); exports.request = require("request"); exports.shelljs = require("shelljs"); +exports.smartcli = require("smartcli"); exports.smartfile = require("smartfile"); exports.smartparam = require("smartparam"); exports.smartssh = require("smartssh"); exports.smartstring = require("smartstring"); exports.through2 = require("through2"); -//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5wbWNpLnBsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUNWLGlCQUFTLFdBQVcsV0FBVyxDQUFDLENBQUM7QUFDcEMsaUJBQVMsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDakMsWUFBSSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN2QixvQkFBWSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUNyQyxZQUFJLFdBQVcsTUFBTSxDQUFDLENBQUM7QUFDdkIsbUJBQVcsV0FBVyxhQUFhLENBQUMsQ0FBQztBQUN4QyxTQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2pCLGVBQU8sR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDN0IsZUFBTyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUMxQixpQkFBUyxXQUFXLFdBQVcsQ0FBQyxDQUFDO0FBQ2pDLGtCQUFVLFdBQVcsWUFBWSxDQUFDLENBQUM7QUFDbkMsZ0JBQVEsV0FBVyxVQUFVLENBQUMsQ0FBQztBQUMvQixtQkFBVyxXQUFXLGFBQWEsQ0FBQyxDQUFDO0FBQ3hDLGdCQUFRLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDIiwiZmlsZSI6Im5wbWNpLnBsdWdpbnMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xuZXhwb3J0IGltcG9ydCBiZWF1dHlsb2cgPSByZXF1aXJlKFwiYmVhdXR5bG9nXCIpO1xuZXhwb3J0IGxldCBjb21tYW5kZXIgPSByZXF1aXJlKFwiY29tbWFuZGVyXCIpO1xuZXhwb3J0IGxldCBndWxwID0gcmVxdWlyZShcImd1bHBcIik7XG5leHBvcnQgbGV0IGd1bHBGdW5jdGlvbiA9IHJlcXVpcmUoXCJndWxwLWZ1bmN0aW9uXCIpO1xuZXhwb3J0IGltcG9ydCBwYXRoID0gcmVxdWlyZShcInBhdGhcIik7XG5leHBvcnQgaW1wb3J0IHByb2plY3RpbmZvID0gcmVxdWlyZShcInByb2plY3RpbmZvXCIpO1xuZXhwb3J0IGxldCBxID0gcmVxdWlyZShcInFcIik7XG5leHBvcnQgbGV0IHJlcXVlc3QgPSByZXF1aXJlKFwicmVxdWVzdFwiKTtcbmV4cG9ydCBsZXQgc2hlbGxqcyA9IHJlcXVpcmUoXCJzaGVsbGpzXCIpO1xuZXhwb3J0IGltcG9ydCBzbWFydGZpbGUgPSByZXF1aXJlKFwic21hcnRmaWxlXCIpO1xuZXhwb3J0IGltcG9ydCBzbWFydHBhcmFtID0gcmVxdWlyZShcInNtYXJ0cGFyYW1cIik7XG5leHBvcnQgaW1wb3J0IHNtYXJ0c3NoID0gcmVxdWlyZShcInNtYXJ0c3NoXCIpO1xuZXhwb3J0IGltcG9ydCBzbWFydHN0cmluZyA9IHJlcXVpcmUoXCJzbWFydHN0cmluZ1wiKTtcbmV4cG9ydCBsZXQgdGhyb3VnaDIgPSByZXF1aXJlKFwidGhyb3VnaDJcIik7Il19 +//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5wbWNpLnBsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sZ0JBQWdCLENBQUMsQ0FBQTtBQUNWLGlCQUFTLFdBQVcsV0FBVyxDQUFDLENBQUM7QUFDcEMsWUFBSSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN2QixvQkFBWSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUNyQyxZQUFJLFdBQVcsTUFBTSxDQUFDLENBQUM7QUFDdkIsbUJBQVcsV0FBVyxhQUFhLENBQUMsQ0FBQztBQUN4QyxTQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2pCLGVBQU8sR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDN0IsZUFBTyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUMxQixnQkFBUSxXQUFXLFVBQVUsQ0FBQyxDQUFDO0FBQy9CLGlCQUFTLFdBQVcsV0FBVyxDQUFDLENBQUM7QUFDakMsa0JBQVUsV0FBVyxZQUFZLENBQUMsQ0FBQztBQUNuQyxnQkFBUSxXQUFXLFVBQVUsQ0FBQyxDQUFDO0FBQy9CLG1CQUFXLFdBQVcsYUFBYSxDQUFDLENBQUM7QUFDeEMsZ0JBQVEsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMiLCJmaWxlIjoibnBtY2kucGx1Z2lucy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInR5cGluZ3MtZ2xvYmFsXCI7XG5leHBvcnQgaW1wb3J0IGJlYXV0eWxvZyA9IHJlcXVpcmUoXCJiZWF1dHlsb2dcIik7XG5leHBvcnQgbGV0IGd1bHAgPSByZXF1aXJlKFwiZ3VscFwiKTtcbmV4cG9ydCBsZXQgZ3VscEZ1bmN0aW9uID0gcmVxdWlyZShcImd1bHAtZnVuY3Rpb25cIik7XG5leHBvcnQgaW1wb3J0IHBhdGggPSByZXF1aXJlKFwicGF0aFwiKTtcbmV4cG9ydCBpbXBvcnQgcHJvamVjdGluZm8gPSByZXF1aXJlKFwicHJvamVjdGluZm9cIik7XG5leHBvcnQgbGV0IHEgPSByZXF1aXJlKFwicVwiKTtcbmV4cG9ydCBsZXQgcmVxdWVzdCA9IHJlcXVpcmUoXCJyZXF1ZXN0XCIpO1xuZXhwb3J0IGxldCBzaGVsbGpzID0gcmVxdWlyZShcInNoZWxsanNcIik7XG5leHBvcnQgaW1wb3J0IHNtYXJ0Y2xpID0gcmVxdWlyZShcInNtYXJ0Y2xpXCIpO1xuZXhwb3J0IGltcG9ydCBzbWFydGZpbGUgPSByZXF1aXJlKFwic21hcnRmaWxlXCIpO1xuZXhwb3J0IGltcG9ydCBzbWFydHBhcmFtID0gcmVxdWlyZShcInNtYXJ0cGFyYW1cIik7XG5leHBvcnQgaW1wb3J0IHNtYXJ0c3NoID0gcmVxdWlyZShcInNtYXJ0c3NoXCIpO1xuZXhwb3J0IGltcG9ydCBzbWFydHN0cmluZyA9IHJlcXVpcmUoXCJzbWFydHN0cmluZ1wiKTtcbmV4cG9ydCBsZXQgdGhyb3VnaDIgPSByZXF1aXJlKFwidGhyb3VnaDJcIik7Il19 diff --git a/package.json b/package.json index 06af39c..41864da 100644 --- a/package.json +++ b/package.json @@ -27,13 +27,13 @@ }, "dependencies": { "beautylog": "^5.0.12", - "commander": "^2.9.0", "gulp": "^3.9.1", "gulp-function": "^1.3.6", "projectinfo": "^1.0.3", "q": "^1.4.1", "request": "^2.72.0", "shelljs": "^0.7.0", + "smartcli": "^1.0.4", "smartfile": "^4.0.5", "smartparam": "^0.1.1", "smartssh": "^1.1.0", diff --git a/ts/index.ts b/ts/index.ts index da3a8f9..3abea0a 100644 --- a/ts/index.ts +++ b/ts/index.ts @@ -6,7 +6,7 @@ let npmciInfo = new plugins.projectinfo.ProjectinfoNpm(paths.NpmciPackageRoot); plugins.beautylog.log("npmci version: " + npmciInfo.version); import {build} from "./npmci.build" -import {command as command2} from "./npmci.command"; +import {command} from "./npmci.command"; import {install} from "./npmci.install"; import {publish} from "./npmci.publish"; import {prepare} from "./npmci.prepare"; @@ -19,60 +19,63 @@ export {build} from "./npmci.build" export {install} from "./npmci.install"; export {publish} from "./npmci.publish"; -let command; -let commandOption:string; -let commander = plugins.commander - .option("-v","--version","print version") - .arguments(' [commandoptionarg]') - .action(function (commandarg, commandoptionarg) { - command = commandarg; - commandOption = commandoptionarg; - }); - -plugins.commander.parse(process.argv); +let smartcli = new plugins.smartcli.Smartcli(); +smartcli.addVersion(npmciInfo.version); -if(commander.version) { - console.log(npmciInfo.version); - process.exit(0); -} +// build +smartcli.addCommand({ + commandName:"build" +}).then((argv) => { + build(argv._[1]) + .then(NpmciEnv.configStore); +}); -if (typeof command === 'undefined') { - console.error('no command given!'); - process.exit(1); -} +// command +smartcli.addCommand({ + commandName:"command" +}).then((argv) => { + command() + .then(NpmciEnv.configStore); +}); -switch (command){ - case "build": - build(commandOption) - .then(NpmciEnv.configStore); - break; - case "command": - command2() - .then(NpmciEnv.configStore); - break; - case "install": - install(commandOption) - .then(NpmciEnv.configStore);; - break; - case "prepare": - prepare(commandOption) - .then(NpmciEnv.configStore);; - break; - case "publish": - publish(commandOption) - .then(NpmciEnv.configStore);; - break; - case "test": - test(commandOption) - .then(NpmciEnv.configStore); - break; - case "trigger": - trigger(); - break; - default: - plugins.beautylog.error("command " + commandOption.blue + " not recognised"); - process.exit(1); - break; -} +// install +smartcli.addCommand({ + commandName:"install" +}).then((argv) => { + install(argv._[1]) + .then(NpmciEnv.configStore); +}); +// prepare +smartcli.addCommand({ + commandName:"prepare" +}).then((argv) => { + prepare(argv._[1]) + .then(NpmciEnv.configStore); +}); + +// publish +smartcli.addCommand({ + commandName:"publish" +}).then((argv) => { + publish(argv._[1]) + .then(NpmciEnv.configStore); +}); + +// test +smartcli.addCommand({ + commandName:"test" +}).then((argv) => { + test(argv._[1]) + .then(NpmciEnv.configStore); +}); + +// trigger +smartcli.addCommand({ + commandName:"trigger" +}).then((argv) => { + trigger(); +}); + +smartcli.startParse(); \ No newline at end of file diff --git a/ts/npmci.plugins.ts b/ts/npmci.plugins.ts index 0ff8e31..cac8215 100644 --- a/ts/npmci.plugins.ts +++ b/ts/npmci.plugins.ts @@ -1,6 +1,5 @@ import "typings-global"; export import beautylog = require("beautylog"); -export let commander = require("commander"); export let gulp = require("gulp"); export let gulpFunction = require("gulp-function"); export import path = require("path"); @@ -8,6 +7,7 @@ export import projectinfo = require("projectinfo"); export let q = require("q"); export let request = require("request"); export let shelljs = require("shelljs"); +export import smartcli = require("smartcli"); export import smartfile = require("smartfile"); export import smartparam = require("smartparam"); export import smartssh = require("smartssh");