@topgroup/diginext
Version:
A BUILD SERVER & CLI to deploy apps to any Kubernetes clusters.
69 lines (68 loc) • 2.35 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.execDomain = void 0;
const log_1 = require("diginext-utils/dist/xconsole/log");
const yargs_1 = __importDefault(require("yargs"));
const dx_domain_1 = require("../diginext/dx-domain");
const logTitle = `[EXEC_DOMAIN]`;
const execDomain = async (options) => {
const { secondAction, name, input, author } = options;
switch (secondAction) {
case "new":
case "add":
case "create":
if (!name) {
(0, log_1.logError)(`Subdomain "name" is required.`);
return;
}
if (!input) {
(0, log_1.logError)(`Subdomain "input" data (IP address) is required.`);
return;
}
if (!options.workspace.dx_key) {
(0, log_1.logError)(`Missing "DX Key" in this workspace.`);
return;
}
const { status, messages, data } = await (0, dx_domain_1.dxCreateDomain)({ name, data: input, userId: author.dxUserId }, options.workspace.dx_key);
if (status === 0) {
(0, log_1.logError)(logTitle, messages.join(". "));
return;
}
(0, log_1.logSuccess)(logTitle, `Created domain "${data.domain}" successfully.`);
break;
case "delete":
try {
(0, log_1.logWarn)(`This feature is under development`);
}
catch (e) {
(0, log_1.logError)(e);
}
break;
case "list":
case "ls":
try {
(0, log_1.logWarn)(`This feature is under development`);
}
catch (e) {
(0, log_1.logError)(e);
}
break;
case "update":
case "modify":
case "change":
try {
(0, log_1.logWarn)(`This feature is under development`);
}
catch (e) {
(0, log_1.logError)(e);
}
break;
default:
yargs_1.default.showHelp();
break;
}
};
exports.execDomain = execDomain;