UNPKG

@flxbl-io/sfp

Version:

sfp is a CLI tool to help you manage your Salesforce projects in an artifact centric model

80 lines 5.99 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.FetchAnArtifactFromNPM = void 0; const fs = __importStar(require("fs-extra")); const child_process = require("child_process"); const path = require("path"); const sfp_logger_1 = __importStar(require("@flxbl-io/sfp-logger")); class FetchAnArtifactFromNPM { constructor(scope, npmrcPath) { this.scope = scope; this.npmrcPath = npmrcPath; //Check whether the user has already passed in @, and remove it this.scope = this.scope.replace(/@/g, '').toLowerCase(); if (this.npmrcPath) { try { fs.copyFileSync(this.npmrcPath, path.resolve('.npmrc')); } catch (error) { throw new Error('We were unable to find or copy the .npmrc file as provided due to ' + error.message); } if (!fs.existsSync('package.json')) { // package json is required in the same directory as .npmrc fs.writeFileSync('package.json', '{}'); } } else { if (fs.existsSync('.npmrc') && !fs.existsSync('package.json')) { fs.writeFileSync('package.json', '{}'); } } } fetchArtifact(packageName, artifactDirectory, version, isToContinueOnMissingArtifact) { try { // NPM package names must be lowercase packageName = packageName.toLowerCase(); let cmd; if (this.scope) cmd = `npm pack @${this.scope.toLowerCase()}/${packageName}_sfpowerscripts_artifact`; else cmd = `npm pack ${packageName}_sfpowerscripts_artifact`; cmd += `@${version}`; sfp_logger_1.default.log(`Fetching ${packageName} using ${cmd}`, sfp_logger_1.LoggerLevel.INFO); child_process.execSync(cmd, { cwd: artifactDirectory, stdio: 'pipe', }); } catch (error) { sfp_logger_1.default.log((0, sfp_logger_1.COLOR_WARNING)(`Artifact for ${packageName} not found in the NPM Registry provided, This might result in deployment failures, Try running with trace log level for more information`), sfp_logger_1.LoggerLevel.INFO); sfp_logger_1.default.log(error, sfp_logger_1.LoggerLevel.TRACE); if (!isToContinueOnMissingArtifact) throw error; } } } exports.FetchAnArtifactFromNPM = FetchAnArtifactFromNPM; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmV0Y2hBbkFydGlmYWN0RnJvbU5QTS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL2FydGlmYWN0cy9GZXRjaEFuQXJ0aWZhY3RGcm9tTlBNLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQStCO0FBQy9CLCtDQUFnRDtBQUNoRCw2QkFBOEI7QUFFOUIsbUVBQTZFO0FBRTdFLE1BQWEsc0JBQXNCO0lBQy9CLFlBQW9CLEtBQWEsRUFBVSxTQUFpQjtRQUF4QyxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQVUsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUN4RCwrREFBK0Q7UUFDL0QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFeEQsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDO2dCQUNELEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDNUQsQ0FBQztZQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7Z0JBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyxvRUFBb0UsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDMUcsQ0FBQztZQUVELElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQ2pDLDJEQUEyRDtnQkFDM0QsRUFBRSxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDM0MsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDO2dCQUM1RCxFQUFFLENBQUMsYUFBYSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMzQyxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFTSxhQUFhLENBQ2hCLFdBQW1CLEVBQ25CLGlCQUF5QixFQUN6QixPQUFlLEVBQ2YsNkJBQXNDO1FBRXRDLElBQUksQ0FBQztZQUNELHNDQUFzQztZQUN0QyxXQUFXLEdBQUcsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBRXhDLElBQUksR0FBVyxDQUFDO1lBQ2hCLElBQUksSUFBSSxDQUFDLEtBQUs7Z0JBQUUsR0FBRyxHQUFHLGFBQWEsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFBSSxXQUFXLDBCQUEwQixDQUFDOztnQkFDaEcsR0FBRyxHQUFHLFlBQVksV0FBVywwQkFBMEIsQ0FBQztZQUU3RCxHQUFHLElBQUksSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUVyQixvQkFBUyxDQUFDLEdBQUcsQ0FBQyxZQUFZLFdBQVcsVUFBVSxHQUFHLEVBQUUsRUFBQyx3QkFBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXZFLGFBQWEsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFO2dCQUN4QixHQUFHLEVBQUUsaUJBQWlCO2dCQUN0QixLQUFLLEVBQUUsTUFBTTthQUNoQixDQUFDLENBQUM7UUFDUCxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNiLG9CQUFTLENBQUMsR0FBRyxDQUNULElBQUEsMEJBQWEsRUFDVCxpQkFBaUIsV0FBVywySUFBMkksQ0FDMUssRUFDRCx3QkFBVyxDQUFDLElBQUksQ0FDbkIsQ0FBQztZQUVGLG9CQUFTLENBQUMsR0FBRyxDQUNULEtBQUssRUFDTCx3QkFBVyxDQUFDLEtBQUssQ0FDcEIsQ0FBQztZQUdGLElBQUksQ0FBQyw2QkFBNkI7Z0JBQUUsTUFBTSxLQUFLLENBQUM7UUFDcEQsQ0FBQztJQUNMLENBQUM7Q0FDSjtBQTlERCx3REE4REMifQ==