@flxbl-io/sfp
Version:
sfp is a CLI tool to help you manage your Salesforce projects in an artifact centric model
97 lines • 8.28 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
const SfpCommand_1 = __importDefault(require("../../SfpCommand"));
const core_1 = require("@salesforce/core");
const FetchImpl_1 = __importDefault(require("../../impl/artifacts/FetchImpl"));
const ReleaseDefinitionLoader_1 = __importDefault(require("../../impl/release/ReleaseDefinitionLoader"));
const FetchArtifactsError_1 = __importDefault(require("../../impl/artifacts/FetchArtifactsError"));
const sfp_logger_1 = require("@flxbl-io/sfp-logger");
const core_2 = require("@oclif/core");
const sfdxflags_1 = require("../../flags/sfdxflags");
const sfp_logger_2 = __importDefault(require("@flxbl-io/sfp-logger"));
const sfp_logger_3 = require("@flxbl-io/sfp-logger");
core_1.Messages.importMessagesDirectory(__dirname);
const messages = core_1.Messages.loadMessages('@flxbl-io/sfp', 'fetch');
class Fetch extends SfpCommand_1.default {
async execute() {
this.validateFlags();
let releaseDefinition = await ReleaseDefinitionLoader_1.default.loadReleaseDefinition(this.flags.releasedefinition);
let result;
let executionStartTime = Date.now();
try {
let fetchImpl = new FetchImpl_1.default(this.flags.artifactdir, this.flags.scriptpath, this.flags.scope, this.flags.npmrcpath, new sfp_logger_1.ConsoleLogger());
result = await fetchImpl.fetchArtifacts([releaseDefinition]);
}
catch (err) {
if (err instanceof FetchArtifactsError_1.default) {
result = err.data;
}
else {
console.log(err.message);
}
process.exitCode = 1;
}
finally {
let totalElapsedTime = Date.now() - executionStartTime;
if (result)
this.printSummary(result, totalElapsedTime);
}
}
printSummary(result, totalElapsedTime) {
sfp_logger_2.default.printHeaderLine('', sfp_logger_3.COLOR_HEADER, core_1.LoggerLevel.INFO);
sfp_logger_2.default.log(`Fetched ${result.success.length} artifacts`);
if (result.failed.length > 0)
console.log(`Failed to fetch ${result.failed.length} artifacts`);
sfp_logger_2.default.log(`Elapsed Time: ${new Date(totalElapsedTime).toISOString().substr(11, 8)}`);
sfp_logger_2.default.printHeaderLine('', sfp_logger_3.COLOR_HEADER, core_1.LoggerLevel.INFO);
}
validateFlags() {
if (this.flags.npm && !this.flags.scope)
throw new Error('--scope parameter is required for NPM');
}
}
_a = Fetch;
Fetch.description = messages.getMessage('commandDescription');
Fetch.examples = [
`$ sfp artifacts:fetch -p myreleasedefinition.yaml -f myscript.sh`,
`$ sfp artifacts:fetch -p myreleasedefinition.yaml --npm --scope myscope --npmrcpath path/to/.npmrc`,
];
Fetch.requiresUsername = false;
Fetch.requiresDevhubUsername = false;
Fetch.flags = {
releasedefinition: core_2.Flags.file({
char: 'p',
description: messages.getMessage('releaseDefinitionFlagDescription'),
}),
artifactdir: core_2.Flags.directory({
required: true,
char: 'd',
description: messages.getMessage('artifactDirectoryFlagDescription'),
default: 'artifacts',
}),
scriptpath: core_2.Flags.file({
char: 'f',
description: messages.getMessage('scriptPathFlagDescription'),
}),
npm: core_2.Flags.boolean({
description: messages.getMessage('npmFlagDescription'),
exclusive: ['scriptpath'],
}),
scope: core_2.Flags.string({
description: messages.getMessage('scopeFlagDescription'),
dependsOn: ['npm'],
parse: async (scope) => scope.replace(/@/g, '').toLowerCase()
}),
npmrcpath: core_2.Flags.file({
description: messages.getMessage('npmrcPathFlagDescription'),
dependsOn: ['npm'],
required: false,
}),
loglevel: sfdxflags_1.loglevel
};
exports.default = Fetch;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvYXJ0aWZhY3RzL2ZldGNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGtFQUEwQztBQUMxQywyQ0FBeUQ7QUFDekQsK0VBQTRFO0FBQzVFLHlHQUFpRjtBQUNqRixtR0FBMkU7QUFDM0UscURBQXFEO0FBQ3JELHNDQUFvQztBQUNwQyxxREFBaUQ7QUFDakQsc0VBQTZDO0FBQzdDLHFEQUFvRDtBQUVwRCxlQUFRLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDNUMsTUFBTSxRQUFRLEdBQUcsZUFBUSxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFakUsTUFBcUIsS0FBTSxTQUFRLG9CQUFVO0lBMkNsQyxLQUFLLENBQUMsT0FBTztRQUNoQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFckIsSUFBSSxpQkFBaUIsR0FBRyxNQUFNLGlDQUF1QixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMxRyxJQUFJLE1BR0gsQ0FBQztRQUVGLElBQUksa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQztZQUNELElBQUksU0FBUyxHQUFjLElBQUksbUJBQVMsQ0FDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUNyQixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQ3BCLElBQUksMEJBQWEsRUFBRSxDQUN0QixDQUFDO1lBRUYsTUFBTSxHQUFHLE1BQU0sU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztRQUNqRSxDQUFDO1FBQUMsT0FBTyxH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