@broadcom/endevor-for-zowe-cli
Version:
Endevor Plug-in for Zowe CLI
63 lines • 6.3 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.ConfirmResolution = void 0;
const index_1 = require("../index");
const WorkspaceUtils_1 = require("./WorkspaceUtils");
const MergeUtils_1 = require("./MergeUtils");
class ConfirmResolution {
static confirmResolution(workspaceArgs) {
return __awaiter(this, void 0, void 0, function* () {
const file = workspaceArgs["workspace-file"];
const result = yield this.confirmResolutionImpl(file);
return new index_1.EndevorWorkspaceResponse(result);
});
}
static confirmResolutionImpl(file) {
return __awaiter(this, void 0, void 0, function* () {
if (!WorkspaceUtils_1.WorkspaceUtils.isWorkspaceFile(file)) {
return {
errorMessages: [`'${file}' is not a local file inside of an Endevor workspace.`]
};
}
const state = yield WorkspaceUtils_1.WorkspaceUtils.getWorkspaceFileState(file);
for (const stageKey in state.environments) {
const stage = state.environments[stageKey];
for (const systemKey in stage.systems) {
const system = stage.systems[systemKey];
for (const subsystemKey in system.subsystems) {
const subsystem = system.subsystems[subsystemKey];
for (const elementKey in subsystem.elements) {
const element = subsystem.elements[elementKey];
if (element.localStatus != index_1.ElementVersionStatus.CONFLICT_RESOLUTION) {
state.errorMessages.push(`There is no conflict resolution pending for file '${file}'.`);
state.infoMessages.push(`Sync Workspace command may need to be used to detect the conflict (if there is one) and start the conflict resolution.`);
return state;
}
yield MergeUtils_1.MergeUtils.markElementAsMerged(element);
const annotationWarning = MergeUtils_1.MergeUtils.checkFileForMergeNotation(element.localFile, state.nodeEncoding);
if (annotationWarning) {
state.warningMessages.push("File contains what appears to be leftover conflict resolution mark-up. Please check the file and ensure conflict resolution is really complete before synchronizing the workspace.");
}
yield WorkspaceUtils_1.WorkspaceUtils.saveState(state);
state.infoMessages.push("Element conflict resolution finished, current content of the file marked as successfully merged.");
return state;
}
}
}
}
state.errorMessages.push(`'${file}' is not a tracked local file inside of an Endevor workspace.`);
return state;
});
}
}
exports.ConfirmResolution = ConfirmResolution;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlybVJlc29sdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBpL3dvcmtzcGFjZS9Db25maXJtUmVzb2x1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUF1QkEsb0NBS2tCO0FBRWxCLHFEQUFrRDtBQUNsRCw2Q0FBMEM7QUFPMUMsTUFBYSxpQkFBaUI7SUFPckIsTUFBTSxDQUFPLGlCQUFpQixDQUFDLGFBQWtDOztZQUN0RSxNQUFNLElBQUksR0FBVyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUNyRCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0RCxPQUFPLElBQUksZ0NBQXdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUMsQ0FBQztLQUFBO0lBT08sTUFBTSxDQUFPLHFCQUFxQixDQUFDLElBQVk7O1lBRXJELElBQUksQ0FBQywrQkFBYyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUMxQyxPQUFPO29CQUNMLGFBQWEsRUFBRSxDQUFDLElBQUksSUFBSSx1REFBdUQsQ0FBQztpQkFDakYsQ0FBQztZQUNKLENBQUM7WUFDRCxNQUFNLEtBQUssR0FBMkIsTUFBTSwrQkFBYyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXZGLEtBQUssTUFBTSxRQUFRLElBQUksS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUMxQyxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMzQyxLQUFLLE1BQU0sU0FBUyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDdEMsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDeEMsS0FBSyxNQUFNLFlBQVksSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7d0JBQzdDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUM7d0JBQ2xELEtBQUssTUFBTSxVQUFVLElBQUksU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDOzRCQUM1QyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDOzRCQUMvQyxJQUFJLE9BQU8sQ0FBQyxXQUFXLElBQUksNEJBQW9CLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztnQ0FDcEUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMscURBQXFELElBQUksSUFBSSxDQUFDLENBQUM7Z0NBQ3hGLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNyQix3SEFBd0gsQ0FDekgsQ0FBQztnQ0FDRixPQUFPLEtBQUssQ0FBQzs0QkFDZixDQUFDOzRCQUNELE1BQU0sdUJBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQzs0QkFFOUMsTUFBTSxpQkFBaUIsR0FBRyx1QkFBVSxDQUFDLHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDOzRCQUN0RyxJQUFJLGlCQUFpQixFQUFFLENBQUM7Z0NBQ3RCLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUN4QixvTEFBb0wsQ0FDckwsQ0FBQzs0QkFDSixDQUFDOzRCQUVELE1BQU0sK0JBQWMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7NEJBQ3RDLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNyQixrR0FBa0csQ0FDbkcsQ0FBQzs0QkFDRixPQUFPLEtBQUssQ0FBQzt3QkFDZixDQUFDO29CQUNILENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7WUFDRCxLQUFLLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksK0RBQStELENBQUMsQ0FBQztZQUNsRyxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7S0FBQTtDQUNGO0FBL0RELDhDQStEQyJ9