UNPKG

@broadcom/endevor-for-zowe-cli

Version:

Endevor Plug-in for Zowe CLI

60 lines 6.06 kB
"use strict"; 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.CacheUtils = void 0; const fs = require("fs"); const zlib = require("zlib"); const lodash_1 = require("lodash"); const HashUtils_1 = require("./HashUtils"); const WorkspaceUtils_1 = require("./WorkspaceUtils"); class CacheUtils { static addSha1FileFromFile(workspaceDir, environment, stageNum, system, subsystem, version, originalFile) { return __awaiter(this, void 0, void 0, function* () { const dir = `${workspaceDir}/.endevor/${environment}/${stageNum}/${system}/${subsystem}`; version.sha1 = yield HashUtils_1.HashUtils.getFileHash(originalFile); const fileName = `${dir}/${version.sha1}${(0, lodash_1.random)(1000000)}`; version.sha1File = fileName; WorkspaceUtils_1.WorkspaceUtils.ensureDirectoryExistence(fileName); yield new Promise((fullfil) => { const inStream = fs.createReadStream(originalFile); const outStream = fs.createWriteStream(fileName); const gzip = zlib.createGzip(); const zipStream = inStream.pipe(gzip); zipStream.pipe(outStream); zipStream.on("finish", fullfil); }); }); } static addSha1FileFromBuffer(workspaceDir, environment, stageNum, system, subsystem, version, content) { return __awaiter(this, void 0, void 0, function* () { const dir = `${workspaceDir}/.endevor/${environment}/${stageNum}/${system}/${subsystem}`; const tempFile = `${dir}/temp${(0, lodash_1.random)(1000000000000000000000000)}`; WorkspaceUtils_1.WorkspaceUtils.ensureDirectoryExistence(tempFile); content = zlib.gzipSync(content); fs.writeFileSync(tempFile, content); version.sha1 = yield HashUtils_1.HashUtils.getFileHash(tempFile); const fileName = `${dir}/${version.sha1}${(0, lodash_1.random)(1000000)}`; fs.renameSync(tempFile, fileName); version.sha1File = fileName; }); } static readSha1File(version) { return zlib.gunzipSync(fs.readFileSync(version.sha1File)); } static removeSha1File(version) { if (version.sha1File != null && version.sha1File != "" && fs.existsSync(version.sha1File)) fs.unlinkSync(version.sha1File); version.sha1File = ""; version.sha1 = ""; } } exports.CacheUtils = CacheUtils; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGVVdGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcGkvd29ya3NwYWNlL0NhY2hlVXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBdUJBLHlCQUF5QjtBQUN6Qiw2QkFBNkI7QUFDN0IsbUNBQWdDO0FBRWhDLDJDQUF3QztBQUN4QyxxREFBa0Q7QUFDbEQsTUFBYSxVQUFVO0lBWWQsTUFBTSxDQUFPLG1CQUFtQixDQUNyQyxZQUFvQixFQUNwQixXQUFtQixFQUNuQixRQUFnQixFQUNoQixNQUFjLEVBQ2QsU0FBaUIsRUFDakIsT0FBcUMsRUFDckMsWUFBb0I7O1lBRXBCLE1BQU0sR0FBRyxHQUFHLEdBQUcsWUFBWSxhQUFhLFdBQVcsSUFBSSxRQUFRLElBQUksTUFBTSxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ3pGLE9BQU8sQ0FBQyxJQUFJLEdBQUcsTUFBTSxxQkFBUyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN6RCxNQUFNLFFBQVEsR0FBRyxHQUFHLEdBQUcsSUFBSSxPQUFPLENBQUMsSUFBSSxHQUFHLElBQUEsZUFBTSxFQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDNUQsT0FBTyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7WUFDNUIsK0JBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNsRCxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQzVCLE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDbkQsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNqRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQy9CLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3RDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQzFCLFNBQVMsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2xDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztLQUFBO0lBYU0sTUFBTSxDQUFPLHFCQUFxQixDQUN2QyxZQUFvQixFQUNwQixXQUFtQixFQUNuQixRQUFnQixFQUNoQixNQUFjLEVBQ2QsU0FBaUIsRUFDakIsT0FBcUMsRUFDckMsT0FBZTs7WUFFZixNQUFNLEdBQUcsR0FBRyxHQUFHLFlBQVksYUFBYSxXQUFXLElBQUksUUFBUSxJQUFJLE1BQU0sSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUN6RixNQUFNLFFBQVEsR0FBRyxHQUFHLEdBQUcsUUFBUSxJQUFBLGVBQU0sRUFBQyx5QkFBeUIsQ0FBQyxFQUFFLENBQUM7WUFDbkUsK0JBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNsRCxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNqQyxFQUFFLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNwQyxPQUFPLENBQUMsSUFBSSxHQUFHLE1BQU0scUJBQVMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckQsTUFBTSxRQUFRLEdBQUcsR0FBRyxHQUFHLElBQUksT0FBTyxDQUFDLElBQUksR0FBRyxJQUFBLGVBQU0sRUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQzVELEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ2xDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQzlCLENBQUM7S0FBQTtJQVFNLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBcUM7UUFDOUQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQU9NLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBcUM7UUFDaEUsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDdkYsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEMsT0FBTyxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDdEIsT0FBTyxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQztDQUNGO0FBeEZELGdDQXdGQyJ9