@flxbl-io/sfp
Version:
sfp is a CLI tool to help you manage your Salesforce projects in an artifact centric model
135 lines • 11 kB
JavaScript
;
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;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const PoolListImpl_1 = __importDefault(require("../../core/scratchorg/pool/PoolListImpl"));
const sfp_logger_1 = __importStar(require("@flxbl-io/sfp-logger"));
const core_1 = require("@salesforce/core");
const SfpCommand_1 = __importDefault(require("../../SfpCommand"));
const core_2 = require("@oclif/core");
const sfdxflags_1 = require("../../flags/sfdxflags");
// Initialize Messages with the current plugin directory
core_1.Messages.importMessagesDirectory(__dirname);
// Load the specific messages for this file. Messages from @salesforce/command, @salesforce/core,
// or any library that is using the messages framework can also be loaded this way.
const messages = core_1.Messages.loadMessages('@flxbl-io/sfp', 'scratchorg_poollist');
class List extends SfpCommand_1.default {
async execute() {
await this.hubOrg.refreshAuth();
const hubConn = this.hubOrg.getConnection();
this.flags.apiversion = this.flags.apiversion || (await hubConn.retrieveMaxApiVersion());
let listImpl = new PoolListImpl_1.default(this.hubOrg, this.flags.tag, this.flags.allscratchorgs);
let result = (await listImpl.execute());
if (!this.flags.mypool && result.length > 0) {
result.forEach((element) => {
delete element.password;
});
}
let scratchOrgInuse = result.filter((element) => element.status === 'In use');
let scratchOrgNotInuse = result.filter((element) => element.status === 'Available');
let scratchOrgInProvision = result.filter((element) => element.status === 'Provisioning in progress');
if (!this.flags.json) {
if (result.length > 0) {
core_2.ux.log(`======== Scratch org Details ========`);
if (!this.flags.tag) {
core_2.ux.log(`List of all the pools in the org`);
this.logTagCount(result);
core_2.ux.log('===================================');
}
if (this.flags.allscratchorgs) {
core_2.ux.log(`Used Scratch Orgs in the pool: ${scratchOrgInuse.length}`);
}
core_2.ux.log(`Unused Scratch Orgs in the Pool : ${scratchOrgNotInuse.length} \n`);
if (scratchOrgInProvision.length && scratchOrgInProvision.length > 0) {
core_2.ux.log(`Scratch Orgs being provisioned in the Pool : ${scratchOrgInProvision.length} \n`);
}
if (this.flags.mypool) {
// ux.table(result, {'tag':{}, 'orgId':{}, 'username':{}, 'password':{}, 'expiryDate':{}, 'status':{}, 'loginURL':{}});
}
else {
//ux.table(result, ['tag', 'orgId', 'username', 'expiryDate', 'status', 'loginURL']);
}
}
else {
sfp_logger_1.default.log(`No Scratch orgs available, time to create your pool.`, sfp_logger_1.LoggerLevel.ERROR);
}
}
let output = {
total: scratchOrgInuse.length + scratchOrgNotInuse.length + scratchOrgInProvision.length,
inuse: scratchOrgInuse.length,
unused: scratchOrgNotInuse.length,
inprovision: scratchOrgInProvision.length,
scratchOrgDetails: result,
};
return output;
}
logTagCount(result) {
let tagCounts = result.reduce(function (obj, v) {
obj[v.tag] = (obj[v.tag] || 0) + 1;
return obj;
}, {});
let tagArray = new Array();
Object.keys(tagCounts).forEach(function (key) {
tagArray.push({
tag: key,
count: tagCounts[key],
});
});
core_2.ux.table(tagArray, { 'tag': {}, 'count': {} });
}
}
List.description = messages.getMessage('commandDescription');
List.requiresDevhubUsername = true;
List.enableJsonFlag = true;
List.examples = [
`$ sfp pool:list -t core `,
`$ sfp pool:list -t core -v devhub`,
`$ sfp pool:list -t core -v devhub -m`,
`$ sfp pool:list -t core -v devhub -m -a`,
];
List.flags = {
targetdevhubusername: sfdxflags_1.targetdevhubusername,
'apiversion': sfdxflags_1.orgApiVersionFlagSfdxStyle,
tag: core_2.Flags.string({
char: 't',
description: messages.getMessage('tagDescription'),
required: false,
}),
mypool: core_2.Flags.boolean({
char: 'm',
description: messages.getMessage('mypoolDescription'),
required: false,
}),
allscratchorgs: core_2.Flags.boolean({
char: 'a',
description: messages.getMessage('allscratchorgsDescription'),
required: false,
}),
loglevel: sfdxflags_1.loglevel
};
exports.default = List;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9wb29sL2xpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLDJGQUFtRTtBQUVuRSxtRUFBOEQ7QUFDOUQsMkNBQTRDO0FBQzVDLGtFQUEwQztBQUMxQyxzQ0FBd0M7QUFDeEMscURBQW1HO0FBRW5HLHdEQUF3RDtBQUN4RCxlQUFRLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFFNUMsaUdBQWlHO0FBQ2pHLG1GQUFtRjtBQUNuRixNQUFNLFFBQVEsR0FBRyxlQUFRLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0FBRS9FLE1BQXFCLElBQUssU0FBUSxvQkFBVTtJQWtDakMsS0FBSyxDQUFDLE9BQU87UUFDaEIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFNUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksQ0FBQyxNQUFNLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7UUFFekYsSUFBSSxRQUFRLEdBQUcsSUFBSSxzQkFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUV4RixJQUFJLE1BQU0sR0FBRyxDQUFDLE1BQU0sUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFpQixDQUFDO1FBRXhELElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lB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