UNPKG

king

Version:

A powerful server infrastructure management platform - "The King of your Nodes"

45 lines (33 loc) 1.21 kB
// Generated by CoffeeScript 1.6.3 var action, addr, pkg, port, program, server, str, type; pkg = require("../../package.json"); program = require("commander"); program.version(pkg.version); program.usage("<rule [port]|serve host[:port]>"); program.on('--help', function() { return console.log("\ Examples:\n king rule\n king rule 5464\n king serve 10.0.1.2\n king serve 10.0.1.2:5464\n\ Notes:\n default port is KING (5464)"); }); program.parse(process.argv); action = program.args[0]; if (action !== "rule" && action !== "serve") { console.log("You must either 'rule' or 'serve'..."); program.help(); } type = action === "rule" ? "king" : "servant"; server = require("../" + type + "/" + type + "-server"); if (type === "king") { str = program.args[1]; port = str ? parseInt(str, 10) : void 0; if (str !== undefined && isNaN(port) || ((0 >= port && port >= 65535))) { console.log("A king cannot rule on the port: '" + str + "'..."); program.help(); } server.start(port); } else if (type === "servant") { addr = program.args[1]; if (!addr) { console.log("You must serve a particular king..."); program.help(); } server.start(addr); }