@broadcom/endevor-for-zowe-cli
Version:
Endevor Plug-in for Zowe CLI
155 lines • 15 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.PackageUtils = void 0;
const imperative_1 = require("@zowe/imperative");
const index_1 = require("../index");
const EndevorConstants_1 = require("../EndevorConstants");
const _ = require("lodash");
class PackageUtils {
static setPackageRequestURI(instance, packageName) {
return instance + "/packages/" + encodeURIComponent(packageName);
}
static sendPackageActionRequest(session, instance, packageName, actionName, actionOptions) {
return __awaiter(this, void 0, void 0, function* () {
return index_1.EndevorRestClient.putJSONExpectJSON(session, PackageUtils.setPackageRequestURI(instance, packageName), Object.assign(Object.assign({}, actionOptions), { action: actionName }));
});
}
static sendPackageActionRequestAsync(session, instance, packageName, actionName, actionOptions) {
return __awaiter(this, void 0, void 0, function* () {
const headers = [];
headers.push(index_1.EndevorHeaders.ASYNCHRONOUS);
return index_1.EndevorRestClient.putJSONExpectJSON(session, PackageUtils.setPackageRequestURI(instance, packageName), Object.assign(Object.assign({}, actionOptions), { action: actionName }), "2.8", headers);
});
}
static formatDateTime(inputDateTime) {
const advisedFormat = "Use yyyy-mm-ddThh:mm or see ISO 8601 standard for syntax.";
let ewDate;
let ewTime;
if (inputDateTime != null) {
const parseDate = new Date(inputDateTime);
if (!_.isDate(parseDate) || isNaN(parseDate.valueOf())) {
throw new imperative_1.ImperativeError({
msg: `Invalid date-time format [from-date-time=${inputDateTime}].\n${advisedFormat}`
});
}
ewDate = index_1.EndevorUtils.formatDate(parseDate);
ewTime = index_1.EndevorUtils.formatTime(parseDate);
}
return [ewDate, ewTime];
}
static setupNotes(args) {
return __awaiter(this, void 0, void 0, function* () {
let note;
if (args.notes != null) {
note = args.notes;
}
else if (args["notes-from-file"] != null) {
try {
note = yield index_1.EndevorUtils.generalReadFile(args["notes-from-file"]);
}
catch (err) {
throw new imperative_1.ImperativeError({
msg: `Reading package notes file error: ${err}`
});
}
}
else {
note = "";
}
const noteStrings = [];
for (const eachnote of note.split(/\r?\n/g)) {
const trimmedNote = eachnote.trim();
if (trimmedNote.length > 0)
noteStrings.push(trimmedNote);
}
if (noteStrings.length > EndevorConstants_1.EndevorConstants.MAX_NOTES) {
throw new imperative_1.ImperativeError({
msg: `Your notes has more then ${EndevorConstants_1.EndevorConstants.MAX_NOTES} lines`
});
}
const JSONparameter = {};
for (const [i, noteString] of noteStrings.entries()) {
if (noteString.length > EndevorConstants_1.EndevorConstants.NOTE_MAX_LEN) {
throw new imperative_1.ImperativeError({
msg: `Your note "${noteString}" has more then ${EndevorConstants_1.EndevorConstants.NOTE_MAX_LEN} characters`
});
}
const key = `note${i + 1}`;
JSONparameter[key] = noteString;
}
return JSONparameter;
});
}
static writeConsoleOutput(session, instance, reportURIs, isWriteReport, logStack, reportFileName, reportDir, suppressInfo, appendToFile) {
return __awaiter(this, void 0, void 0, function* () {
const reports = yield index_1.EndevorRestUtils.writeConsoleOutput(session, instance, reportURIs, isWriteReport, logStack, reportFileName, reportDir, suppressInfo, appendToFile);
const C1MSG2index = reports.indexOf("----------- --------- ------- ---------------- ------- -----------");
if (C1MSG2index >= 0) {
const C1MSGS2 = reports.substring(C1MSG2index);
const myreport = this.PackageC1MSGS2reports(C1MSGS2);
myreport.forEach((line) => {
if (line.action === "SUBMIT") {
["ENMP083I", "ENMP084E"].forEach((msgid) => {
const extractedMsgContent = PackageUtils.getOneMsgFromMsgs(reports, msgid);
if (extractedMsgContent != null) {
logStack.push(extractedMsgContent);
}
});
logStack.push(`${line.action} of ${line.pkgName} has been requested with RC ${line.returnCode}`);
}
else {
logStack.push(`${line.action} of ${line.pkgName} finished with ${line.returnCode}`);
}
});
}
});
}
static PackageC1MSGS2reports(C1MSGS2) {
const C1MSGS2lines = [];
const C1MSGS2list = C1MSGS2.substring("----------- --------- ------- ---------------- ------- -----------".length, C1MSGS2.indexOf(" ENBP010I") - 10);
const C1MSGS2listItems = C1MSGS2list.split("\n");
C1MSGS2listItems.shift();
C1MSGS2listItems.pop();
C1MSGS2listItems.forEach((listItem) => {
if (listItem.length > 120) {
const pkgAction = listItem.substring(0, 35).trim();
if (!pkgAction.includes(" ") && pkgAction.length > 0) {
C1MSGS2lines.push({
action: pkgAction,
statementNum: listItem.substring(35, 45).trim(),
pkgNum: listItem.substring(45, 55).trim(),
pkgName: listItem.substring(55, 75).trim(),
returnCode: listItem.substring(75, 85).trim(),
exeReturnCode: listItem.substring(85).trim()
});
}
}
});
return C1MSGS2lines;
}
static getOneMsgFromMsgs(reports, msgId) {
if (reports == null || reports.length === 0) {
return null;
}
const lineRegex = new RegExp(`(\\d{2}:\\d{2}:\\d{2})\\s+(${msgId})\\s+(.*)`);
const msgLines = reports.split(/\r?\n/g);
for (const line of msgLines) {
const matchGroups = line.match(lineRegex);
if (matchGroups != null && matchGroups.length === 4) {
return matchGroups[3].trimRight();
}
}
return null;
}
}
exports.PackageUtils = PackageUtils;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZVV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9wYWNrYWdlcy9QYWNrYWdlVXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBdUJBLGlEQUE0RDtBQUM1RCxvQ0FXa0I7QUFDbEIsMERBQXVEO0FBQ3ZELDRCQUE0QjtBQVE1QixNQUFhLFlBQVk7SUFVaEIsTUFBTSxDQUFDLG9CQUFvQixDQUFDLFFBQWdCLEVBQUUsV0FBbUI7UUFDdEUsT0FBTyxRQUFRLEdBQUcsWUFBWSxHQUFHLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFnQk0sTUFBTSxDQUFPLHdCQUF3QixDQUMxQyxPQUFnQixFQUNoQixRQUFnQixFQUNoQixXQUFtQixFQUNuQixVQUFrQixFQUNsQixhQUFvQzs7WUFFcEMsT0FBTyx5QkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsa0NBQ3ZHLGFBQWEsS0FDaEIsTUFBTSxFQUFFLFVBQVUsSUFDbEIsQ0FBQztRQUNMLENBQUM7S0FBQTtJQWdCTSxNQUFNLENBQU8sNkJBQTZCLENBQy9DLE9BQWdCLEVBQ2hCLFFBQWdCLEVBQ2hCLFdBQW1CLEVBQ25CLFVBQWtCLEVBQ2xCLGFBQW9DOztZQUVwQyxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxzQkFBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzFDLE9BQU8seUJBQWlCLENBQUMsaUJBQWlCLENBQ3hDLE9BQU8sRUFDUCxZQUFZLENBQUMsb0JBQW9CLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxrQ0FFbkQsYUFBYSxLQUNoQixNQUFNLEVBQUUsVUFBVSxLQUVwQixLQUFLLEVBQ0wsT0FBTyxDQUNSLENBQUM7UUFDSixDQUFDO0tBQUE7SUFZTSxNQUFNLENBQUMsY0FBYyxDQUFDLGFBQXdDO1FBQ25FLE1BQU0sYUFBYSxHQUFHLDJEQUEyRCxDQUFDO1FBQ2xGLElBQUksTUFBTSxDQUFDO1FBQ1gsSUFBSSxNQUFNLENBQUM7UUFDWCxJQUFJLGFBQWEsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMxQixNQUFNLFNBQVMsR0FBUyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNoRCxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQztnQkFDdkQsTUFBTSxJQUFJLDRCQUFlLENBQUM7b0JBQ3hCLEdBQUcsRUFBRSw0Q0FBNEMsYUFBYSxPQUFPLGFBQWEsRUFBRTtpQkFDckYsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztZQUNELE1BQU0sR0FBRyxvQkFBWSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM1QyxNQUFNLEdBQUcsb0JBQVksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUMsQ0FBQztRQUNELE9BQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQVVNLE1BQU0sQ0FBTyxVQUFVLENBQUMsSUFBd0I7O1lBQ3JELElBQUksSUFBSSxDQUFDO1lBQ1QsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUN2QixJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNwQixDQUFDO2lCQUFNLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQztvQkFDSCxJQUFJLEdBQUcsTUFBTSxvQkFBWSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO2dCQUNyRSxDQUFDO2dCQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7b0JBQ2IsTUFBTSxJQUFJLDRCQUFlLENBQUM7d0JBQ3hCLEdBQUcsRUFBRSxxQ0FBcUMsR0FBRyxFQUFFO3FCQUNoRCxDQUFDLENBQUM7Z0JBQ0wsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1osQ0FBQztZQUVELE1BQU0sV0FBVyxHQUFhLEVBQUUsQ0FBQztZQUNqQyxLQUFLLE1BQU0sUUFBUSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDNUMsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNwQyxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQztvQkFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzVELENBQUM7WUFDRCxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsbUNBQWdCLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3BELE1BQU0sSUFBSSw0QkFBZSxDQUFDO29CQUN4QixHQUFHLEVBQUUsNEJBQTRCLG1DQUFnQixDQUFDLFNBQVMsUUFBUTtpQkFDcEUsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztZQUVELE1BQU0sYUFBYSxHQUEwQixFQUFFLENBQUM7WUFDaEQsS0FBSyxNQUFNLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO2dCQUNwRCxJQUFJLFVBQVUsQ0FBQyxNQUFNLEdBQUcsbUNBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7b0JBQ3RELE1BQU0sSUFBSSw0QkFBZSxDQUFDO3dCQUN4QixHQUFHLEVBQUUsY0FBYyxVQUFVLG1CQUFtQixtQ0FBZ0IsQ0FBQyxZQUFZLGFBQWE7cUJBQzNGLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUMzQixhQUFhLENBQUMsR0FBRyxDQUFDLEdBQUcsVUFBVSxDQUFDO1lBQ2xDLENBQUM7WUFDRCxPQUFPLGFBQWEsQ0FBQztRQUN2QixDQUFDO0tBQUE7SUFZTSxNQUFNLENBQU8sa0JBQWtCLENBQ3BDLE9BQWdCLEVBQ2hCLFFBQWdCLEVBQ2hCLFVBQStCLEVBQy9CLGFBQXNCLEVBQ3RCLFFBQWtCLEVBQ2xCLGNBQXVCLEVBQ3ZCLFNBQWtCLEVBQ2xCLFlBQXNCLEVBQ3RCLFlBQXNCOztZQUV0QixNQUFNLE9BQU8sR0FBRyxNQUFNLHdCQUFnQixDQUFDLGtCQUFrQixDQUN2RCxPQUFPLEVBQ1AsUUFBUSxFQUNSLFVBQVUsRUFDVixhQUFhLEVBQ2IsUUFBUSxFQUNSLGNBQWMsRUFDZCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksQ0FDYixDQUFDO1lBRUYsTUFBTSxXQUFXLEdBQVcsT0FBTyxDQUFDLE9BQU8sQ0FDekMseUVBQXlFLENBQzFFLENBQUM7WUFDRixJQUFJLFdBQVcsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDckIsTUFBTSxPQUFPLEdBQVcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDdkQsTUFBTSxRQUFRLEdBQTJCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDN0UsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO29CQUN4QixJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssUUFBUSxFQUFFLENBQUM7d0JBQzdCLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFOzRCQUN6QyxNQUFNLG1CQUFtQixHQUFHLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7NEJBQzNFLElBQUksbUJBQW1CLElBQUksSUFBSSxFQUFFLENBQUM7Z0NBQ2hDLFFBQVEsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQzs0QkFDckMsQ0FBQzt3QkFDSCxDQUFDLENBQUMsQ0FBQzt3QkFDSCxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sT0FBTyxJQUFJLENBQUMsT0FBTywrQkFBK0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7b0JBQ25HLENBQUM7eUJBQU0sQ0FBQzt3QkFDTixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sT0FBTyxJQUFJLENBQUMsT0FBTyxrQkFBa0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7b0JBQ3RGLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztLQUFBO0lBU00sTUFBTSxDQUFDLHFCQUFxQixDQUFDLE9BQWU7UUFDakQsTUFBTSxZQUFZLEdBQTJCLEVBQUUsQ0FBQztRQUVoRCxNQUFNLFdBQVcsR0FBVyxPQUFPLENBQUMsU0FBUyxDQUMzQyx5RUFBeUUsQ0FBQyxNQUFNLEVBQ2hGLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUNuQyxDQUFDO1FBQ0YsTUFBTSxnQkFBZ0IsR0FBYSxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNELGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3pCLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRXZCLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3BDLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztnQkFDMUIsTUFBTSxTQUFTLEdBQVcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQzNELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQ3JELFlBQVksQ0FBQyxJQUFJLENBQUM7d0JBQ2hCLE1BQU0sRUFBRSxTQUFTO3dCQUNqQixZQUFZLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFO3dCQUMvQyxNQUFNLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFO3dCQUN6QyxPQUFPLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFO3dCQUMxQyxVQUFVLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFO3dCQUM3QyxhQUFhLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUU7cUJBQzdDLENBQUMsQ0FBQztnQkFDTCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQWFNLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxPQUFlLEVBQUUsS0FBYTtRQUc1RCxJQUFJLE9BQU8sSUFBSSxJQUFJLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM1QyxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLE1BQU0sQ0FBQyw4QkFBOEIsS0FBSyxXQUFXLENBQUMsQ0FBQztRQUM3RSxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3pDLEtBQUssTUFBTSxJQUFJLElBQUksUUFBUSxFQUFFLENBQUM7WUFDNUIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMxQyxJQUFJLFdBQVcsSUFBSSxJQUFJLElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDcEQsT0FBTyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDcEMsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRjtBQTlRRCxvQ0E4UUMifQ==