@salesforce/plugin-deploy-retrieve 1.1.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/README.md +35 -7
- package/lib/commands/deploy/metadata.d.ts +16 -20
- package/lib/commands/deploy/metadata.js +79 -70
- package/lib/commands/deploy/metadata.js.map +1 -1
- package/lib/commands/retrieve/metadata.d.ts +6 -11
- package/lib/commands/retrieve/metadata.js +48 -47
- package/lib/commands/retrieve/metadata.js.map +1 -1
- package/lib/hooks/deploy.js +1 -1
- package/lib/hooks/deploy.js.map +1 -1
- package/lib/utils/deploy.d.ts +29 -0
- package/lib/utils/deploy.js +81 -0
- package/lib/utils/deploy.js.map +1 -0
- package/lib/utils/metadataDeployer.d.ts +1 -1
- package/lib/utils/metadataDeployer.js +50 -17
- package/lib/utils/metadataDeployer.js.map +1 -1
- package/lib/utils/output.d.ts +8 -9
- package/lib/utils/output.js +127 -29
- package/lib/utils/output.js.map +1 -1
- package/lib/utils/progressBar.d.ts +1 -1
- package/lib/utils/progressBar.js +4 -4
- package/lib/utils/progressBar.js.map +1 -1
- package/lib/utils/project.d.ts +3 -0
- package/lib/utils/project.js +22 -0
- package/lib/utils/project.js.map +1 -0
- package/lib/utils/{testLevel.d.ts → types.d.ts} +10 -0
- package/lib/utils/{testLevel.js → types.js} +7 -2
- package/lib/utils/types.js.map +1 -0
- package/messages/deploy.md +8 -3
- package/messages/deploy.metadata.md +54 -2
- package/messages/retrieve.metadata.md +10 -2
- package/oclif.manifest.json +1 -1
- package/package.json +52 -37
- package/schemas/deploy-metadata.json +5 -2
- package/lib/utils/componentSetBuilder.d.ts +0 -28
- package/lib/utils/componentSetBuilder.js +0 -124
- package/lib/utils/componentSetBuilder.js.map +0 -1
- package/lib/utils/config.d.ts +0 -1
- package/lib/utils/config.js +0 -18
- package/lib/utils/config.js.map +0 -1
- package/lib/utils/orgs.d.ts +0 -4
- package/lib/utils/orgs.js +0 -39
- package/lib/utils/orgs.js.map +0 -1
- package/lib/utils/requiredFlagValidator.d.ts +0 -3
- package/lib/utils/requiredFlagValidator.js +0 -19
- package/lib/utils/requiredFlagValidator.js.map +0 -1
- package/lib/utils/testLevel.js.map +0 -1
- package/messages/required.flag.md +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/commands/retrieve/metadata.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH,6BAA6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/commands/retrieve/metadata.ts"],"names":[],"mappings":"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"}
|
package/lib/hooks/deploy.js
CHANGED
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
9
9
|
const core_1 = require("@salesforce/core");
|
|
10
10
|
const metadataDeployer_1 = require("../utils/metadataDeployer");
|
|
11
11
|
const hook = async function () {
|
|
12
|
-
const project = await core_1.
|
|
12
|
+
const project = await core_1.SfProject.resolve();
|
|
13
13
|
const packageDirectories = project.getPackageDirectories();
|
|
14
14
|
return [new metadataDeployer_1.MetadataDeployer(packageDirectories)];
|
|
15
15
|
};
|
package/lib/hooks/deploy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/hooks/deploy.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH,
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/hooks/deploy.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH,2CAA6C;AAE7C,gEAA6D;AAE7D,MAAM,IAAI,GAAoC,KAAK;IACjD,MAAM,OAAO,GAAG,MAAM,gBAAS,CAAC,OAAO,EAAE,CAAC;IAC1C,MAAM,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAC3D,OAAO,CAAC,IAAI,mCAAgB,CAAC,kBAAkB,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,kBAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Interfaces } from '@oclif/core';
|
|
2
|
+
import { Duration } from '@salesforce/kit';
|
|
3
|
+
import { Nullable } from '@salesforce/ts-types';
|
|
4
|
+
import { ComponentSet, DeployResult, MetadataApiDeploy } from '@salesforce/source-deploy-retrieve';
|
|
5
|
+
import { API, TestLevel, TestResults } from './types';
|
|
6
|
+
declare type Options = {
|
|
7
|
+
api: API;
|
|
8
|
+
'target-org': string;
|
|
9
|
+
'test-level': TestLevel;
|
|
10
|
+
'api-version'?: string;
|
|
11
|
+
'dry-run'?: boolean;
|
|
12
|
+
'ignore-errors'?: boolean;
|
|
13
|
+
'ignore-warnings'?: boolean;
|
|
14
|
+
manifest?: string;
|
|
15
|
+
metadata?: string[];
|
|
16
|
+
'source-dir'?: string[];
|
|
17
|
+
tests?: string[];
|
|
18
|
+
wait?: Duration;
|
|
19
|
+
verbose?: boolean;
|
|
20
|
+
};
|
|
21
|
+
export declare function validateTests(testLevel: TestLevel, tests: Nullable<string[]>): boolean;
|
|
22
|
+
export declare function resolveRestDeploy(): API;
|
|
23
|
+
export declare function executeDeploy(opts: Partial<Options>): Promise<{
|
|
24
|
+
deploy: MetadataApiDeploy;
|
|
25
|
+
componentSet: ComponentSet;
|
|
26
|
+
}>;
|
|
27
|
+
export declare const testLevelFlag: (opts?: Partial<Interfaces.OptionFlag<TestLevel | undefined>>) => Interfaces.OptionFlag<TestLevel | undefined>;
|
|
28
|
+
export declare function getTestResults(result: DeployResult): TestResults;
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2022, salesforce.com, inc.
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Licensed under the BSD 3-Clause license.
|
|
6
|
+
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.getTestResults = exports.testLevelFlag = exports.executeDeploy = exports.resolveRestDeploy = exports.validateTests = void 0;
|
|
10
|
+
const core_1 = require("@oclif/core");
|
|
11
|
+
const core_2 = require("@salesforce/core");
|
|
12
|
+
const source_deploy_retrieve_1 = require("@salesforce/source-deploy-retrieve");
|
|
13
|
+
const project_1 = require("./project");
|
|
14
|
+
const types_1 = require("./types");
|
|
15
|
+
function validateTests(testLevel, tests) {
|
|
16
|
+
if (testLevel === types_1.TestLevel.RunSpecifiedTests && (tests !== null && tests !== void 0 ? tests : []).length === 0)
|
|
17
|
+
return false;
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
exports.validateTests = validateTests;
|
|
21
|
+
function resolveRestDeploy() {
|
|
22
|
+
const restDeployConfig = core_2.ConfigAggregator.getValue(core_2.SfdxPropertyKeys.REST_DEPLOY).value;
|
|
23
|
+
if (restDeployConfig === 'false') {
|
|
24
|
+
return types_1.API.SOAP;
|
|
25
|
+
}
|
|
26
|
+
else if (restDeployConfig === 'true') {
|
|
27
|
+
return types_1.API.REST;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
return types_1.API.SOAP;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.resolveRestDeploy = resolveRestDeploy;
|
|
34
|
+
async function executeDeploy(opts) {
|
|
35
|
+
const componentSet = await source_deploy_retrieve_1.ComponentSetBuilder.build({
|
|
36
|
+
apiversion: opts['api-version'],
|
|
37
|
+
sourceapiversion: await (0, project_1.getSourceApiVersion)(),
|
|
38
|
+
sourcepath: opts['source-dir'],
|
|
39
|
+
manifest: opts.manifest && {
|
|
40
|
+
manifestPath: opts.manifest,
|
|
41
|
+
directoryPaths: await (0, project_1.getPackageDirs)(),
|
|
42
|
+
},
|
|
43
|
+
metadata: opts.metadata && {
|
|
44
|
+
metadataEntries: opts.metadata,
|
|
45
|
+
directoryPaths: await (0, project_1.getPackageDirs)(),
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
const deploy = await componentSet.deploy({
|
|
49
|
+
usernameOrConnection: opts['target-org'],
|
|
50
|
+
apiOptions: {
|
|
51
|
+
checkOnly: opts['dry-run'] || false,
|
|
52
|
+
ignoreWarnings: opts['ignore-warnings'] || false,
|
|
53
|
+
rest: opts.api === types_1.API.REST,
|
|
54
|
+
rollbackOnError: !opts['ignore-errors'] || false,
|
|
55
|
+
runTests: opts.tests || [],
|
|
56
|
+
testLevel: opts['test-level'],
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
return { deploy, componentSet };
|
|
60
|
+
}
|
|
61
|
+
exports.executeDeploy = executeDeploy;
|
|
62
|
+
const testLevelFlag = (opts = {}) => {
|
|
63
|
+
return core_1.Flags.build({
|
|
64
|
+
char: 'l',
|
|
65
|
+
parse: (input) => Promise.resolve(input),
|
|
66
|
+
options: Object.values(types_1.TestLevel),
|
|
67
|
+
...opts,
|
|
68
|
+
})();
|
|
69
|
+
};
|
|
70
|
+
exports.testLevelFlag = testLevelFlag;
|
|
71
|
+
function getTestResults(result) {
|
|
72
|
+
var _a, _b, _c;
|
|
73
|
+
const passing = (_a = result.response.numberTestsCompleted) !== null && _a !== void 0 ? _a : 0;
|
|
74
|
+
const failing = (_b = result.response.numberTestErrors) !== null && _b !== void 0 ? _b : 0;
|
|
75
|
+
const total = (_c = result.response.numberTestsTotal) !== null && _c !== void 0 ? _c : 0;
|
|
76
|
+
const testResults = { passing, failing, total };
|
|
77
|
+
const time = result.response.details.runTestResult.totalTime;
|
|
78
|
+
return time ? { ...testResults, time } : testResults;
|
|
79
|
+
}
|
|
80
|
+
exports.getTestResults = getTestResults;
|
|
81
|
+
//# sourceMappingURL=deploy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/utils/deploy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { NamedPackageDir } from '@salesforce/core';
|
|
2
2
|
import { Deployable, Deployer } from '@salesforce/sf-plugins-core';
|
|
3
|
-
import { TestLevel } from './
|
|
3
|
+
import { TestLevel } from './types';
|
|
4
4
|
export interface MetadataDeployOptions extends Deployer.Options {
|
|
5
5
|
testLevel?: TestLevel;
|
|
6
6
|
username?: string;
|
|
@@ -12,13 +12,12 @@ const chalk_1 = require("chalk");
|
|
|
12
12
|
const kit_1 = require("@salesforce/kit");
|
|
13
13
|
const core_1 = require("@salesforce/core");
|
|
14
14
|
const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
|
|
15
|
-
const componentSetBuilder_1 = require("./componentSetBuilder");
|
|
16
15
|
const output_1 = require("./output");
|
|
17
|
-
const
|
|
16
|
+
const types_1 = require("./types");
|
|
18
17
|
const progressBar_1 = require("./progressBar");
|
|
19
|
-
const
|
|
18
|
+
const deploy_1 = require("./deploy");
|
|
20
19
|
core_1.Messages.importMessagesDirectory(__dirname);
|
|
21
|
-
const messages = core_1.Messages.loadMessages('@salesforce/plugin-deploy-retrieve', 'deploy
|
|
20
|
+
const messages = core_1.Messages.loadMessages('@salesforce/plugin-deploy-retrieve', 'deploy');
|
|
22
21
|
const compareOrgs = (a, b) => {
|
|
23
22
|
// scratch orgs before other orgs
|
|
24
23
|
if (a.isScratchOrg && !b.isScratchOrg) {
|
|
@@ -68,7 +67,7 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
68
67
|
constructor(packages) {
|
|
69
68
|
super();
|
|
70
69
|
this.packages = packages;
|
|
71
|
-
this.testLevel =
|
|
70
|
+
this.testLevel = types_1.TestLevel.NoTestRun;
|
|
72
71
|
this.deployables = this.packages.map((pkg) => new DeployablePackage(pkg, this));
|
|
73
72
|
}
|
|
74
73
|
getName() {
|
|
@@ -98,11 +97,13 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
98
97
|
async deploy() {
|
|
99
98
|
const directories = this.deployables.map((d) => d.pkg.fullPath);
|
|
100
99
|
const name = this.deployables.map((p) => chalk_1.cyan.bold(p.getPath())).join(', ');
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
const deploy = await
|
|
104
|
-
|
|
105
|
-
|
|
100
|
+
const api = (0, deploy_1.resolveRestDeploy)();
|
|
101
|
+
this.log(`${os_1.EOL}Deploying ${name} to ${this.username} using ${api} API`);
|
|
102
|
+
const { deploy } = await (0, deploy_1.executeDeploy)({
|
|
103
|
+
'target-org': this.username,
|
|
104
|
+
'source-dir': directories,
|
|
105
|
+
'test-level': this.testLevel,
|
|
106
|
+
api,
|
|
106
107
|
});
|
|
107
108
|
new progressBar_1.DeployProgress(deploy).start();
|
|
108
109
|
const result = await deploy.pollStatus(500, kit_1.Duration.minutes(33).seconds);
|
|
@@ -115,7 +116,29 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
115
116
|
const aliasOrUsername = (_a = core_1.ConfigAggregator.getValue(core_1.OrgConfigProperties.TARGET_ORG)) === null || _a === void 0 ? void 0 : _a.value;
|
|
116
117
|
const globalInfo = await core_1.GlobalInfo.getInstance();
|
|
117
118
|
const allAliases = globalInfo.aliases.getAll();
|
|
118
|
-
|
|
119
|
+
let targetOrgAuth;
|
|
120
|
+
// make sure the "target-org" can be used in this deploy
|
|
121
|
+
if (aliasOrUsername) {
|
|
122
|
+
targetOrgAuth = (await core_1.AuthInfo.listAllAuthorizations((a) => a.username === aliasOrUsername || a.aliases.some((alias) => alias === aliasOrUsername))).find((a) => a);
|
|
123
|
+
if (targetOrgAuth) {
|
|
124
|
+
if (targetOrgAuth === null || targetOrgAuth === void 0 ? void 0 : targetOrgAuth.isExpired) {
|
|
125
|
+
const continueAnswer = await this.prompt([
|
|
126
|
+
{
|
|
127
|
+
name: 'continue',
|
|
128
|
+
type: 'confirm',
|
|
129
|
+
message: (0, chalk_1.red)(messages.getMessage('warning.TargetOrgIsExpired', [aliasOrUsername])),
|
|
130
|
+
},
|
|
131
|
+
]);
|
|
132
|
+
if (!continueAnswer.continue) {
|
|
133
|
+
throw messages.createError('error.UserTerminatedDeployForExpiredOrg');
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
return globalInfo.aliases.resolveUsername(aliasOrUsername);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
if (!aliasOrUsername || (targetOrgAuth === null || targetOrgAuth === void 0 ? void 0 : targetOrgAuth.isExpired)) {
|
|
119
142
|
const authorizations = (await core_1.AuthInfo.listAllAuthorizations((orgAuth) => !orgAuth.error && orgAuth.isExpired !== true)).map((orgAuth) => {
|
|
120
143
|
const org = globalInfo.orgs.get(orgAuth.username);
|
|
121
144
|
const timestamp = org.timestamp ? new Date(org.timestamp) : new Date();
|
|
@@ -141,15 +164,25 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
141
164
|
choices: (0, sf_plugins_core_1.generateTableChoices)(columns, options, false),
|
|
142
165
|
},
|
|
143
166
|
]);
|
|
167
|
+
if (targetOrgAuth === null || targetOrgAuth === void 0 ? void 0 : targetOrgAuth.isExpired) {
|
|
168
|
+
const setTargetOrg = await this.prompt([
|
|
169
|
+
{
|
|
170
|
+
name: 'save',
|
|
171
|
+
type: 'confirm',
|
|
172
|
+
message: messages.getMessage('save.as.default', [username]),
|
|
173
|
+
},
|
|
174
|
+
]);
|
|
175
|
+
if (setTargetOrg.save) {
|
|
176
|
+
const authInfo = await core_1.AuthInfo.create({ username });
|
|
177
|
+
await authInfo.setAsDefault({ org: true });
|
|
178
|
+
}
|
|
179
|
+
}
|
|
144
180
|
return username;
|
|
145
181
|
}
|
|
146
182
|
else {
|
|
147
183
|
throw messages.createError('errors.NoOrgsToSelect');
|
|
148
184
|
}
|
|
149
185
|
}
|
|
150
|
-
else {
|
|
151
|
-
return globalInfo.aliases.resolveUsername(aliasOrUsername);
|
|
152
|
-
}
|
|
153
186
|
}
|
|
154
187
|
async promptForTestLevel() {
|
|
155
188
|
const { testLevel } = await this.prompt([
|
|
@@ -160,11 +193,11 @@ class MetadataDeployer extends sf_plugins_core_1.Deployer {
|
|
|
160
193
|
loop: false,
|
|
161
194
|
pageSize: 4,
|
|
162
195
|
choices: [
|
|
163
|
-
{ name: "Don't run tests", value:
|
|
164
|
-
{ name: 'Run local tests', value:
|
|
196
|
+
{ name: "Don't run tests", value: types_1.TestLevel.NoTestRun, short: "Don't run tests" },
|
|
197
|
+
{ name: 'Run local tests', value: types_1.TestLevel.RunLocalTests, short: 'Run local tests' },
|
|
165
198
|
{
|
|
166
199
|
name: 'Run all tests in environment',
|
|
167
|
-
value:
|
|
200
|
+
value: types_1.TestLevel.RunAllTestsInOrg,
|
|
168
201
|
short: 'Run all tests in environment',
|
|
169
202
|
},
|
|
170
203
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadataDeployer.js","sourceRoot":"","sources":["../../src/utils/metadataDeployer.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2BAAyB;AACzB,
|
|
1
|
+
{"version":3,"file":"metadataDeployer.js","sourceRoot":"","sources":["../../src/utils/metadataDeployer.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/output.d.ts
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import { DeployResult, FileResponse, RetrieveResult } from '@
|
|
2
|
-
import {
|
|
3
|
-
import { TestLevel } from './
|
|
4
|
-
export declare type PackageRetrieval = {
|
|
5
|
-
name: string;
|
|
6
|
-
path: string;
|
|
7
|
-
};
|
|
1
|
+
import { DeployResult, FileResponse, RetrieveResult, Failures, Successes, ComponentSet } from '@salesforce/source-deploy-retrieve';
|
|
2
|
+
import { NamedPackageDir } from '@salesforce/core';
|
|
3
|
+
import { API, TestLevel } from './types';
|
|
8
4
|
export declare function asRelativePaths(fileResponses: FileResponse[]): FileResponse[];
|
|
9
5
|
/**
|
|
10
6
|
* Sorts file responds by type, then by filePath, then by fullName
|
|
@@ -12,7 +8,10 @@ export declare function asRelativePaths(fileResponses: FileResponse[]): FileResp
|
|
|
12
8
|
export declare function sortFileResponses(fileResponses: FileResponse[]): FileResponse[];
|
|
13
9
|
export declare function sortTestResults(results?: Failures[] | Successes[]): Failures[] | Successes[];
|
|
14
10
|
export declare function toArray<T>(entryOrArray: T | T[] | undefined): T[];
|
|
11
|
+
export declare function displayDeployResults(result: DeployResult, testLevel: TestLevel, verbose: boolean): void;
|
|
15
12
|
export declare function displaySuccesses(result: DeployResult | RetrieveResult): void;
|
|
16
|
-
export declare function displayPackages(result: RetrieveResult, packages:
|
|
17
|
-
export declare function displayTestResults(result: DeployResult, testLevel: TestLevel): void;
|
|
13
|
+
export declare function displayPackages(result: RetrieveResult, packages: NamedPackageDir[]): void;
|
|
14
|
+
export declare function displayTestResults(result: DeployResult, testLevel: TestLevel, verbose?: boolean): void;
|
|
18
15
|
export declare function displayFailures(result: DeployResult | RetrieveResult): void;
|
|
16
|
+
export declare function displayDeletes(result: DeployResult): void;
|
|
17
|
+
export declare function getVersionMessage(action: string, componentSet: ComponentSet, api: API): string;
|
package/lib/utils/output.js
CHANGED
|
@@ -6,26 +6,28 @@
|
|
|
6
6
|
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.displayFailures = exports.displayTestResults = exports.displayPackages = exports.displaySuccesses = exports.toArray = exports.sortTestResults = exports.sortFileResponses = exports.asRelativePaths = void 0;
|
|
9
|
+
exports.getVersionMessage = exports.displayDeletes = exports.displayFailures = exports.displayTestResults = exports.displayPackages = exports.displaySuccesses = exports.displayDeployResults = exports.toArray = exports.sortTestResults = exports.sortFileResponses = exports.asRelativePaths = void 0;
|
|
10
10
|
const os = require("os");
|
|
11
11
|
const path = require("path");
|
|
12
12
|
const core_1 = require("@oclif/core");
|
|
13
13
|
const chalk_1 = require("chalk");
|
|
14
|
-
const
|
|
15
|
-
const types_1 = require("
|
|
16
|
-
const ts_types_1 = require("@salesforce/ts-types");
|
|
17
|
-
const testLevel_1 = require("./testLevel");
|
|
14
|
+
const source_deploy_retrieve_1 = require("@salesforce/source-deploy-retrieve");
|
|
15
|
+
const types_1 = require("./types");
|
|
18
16
|
function info(message) {
|
|
19
17
|
return (0, chalk_1.blue)((0, chalk_1.bold)(message));
|
|
20
18
|
}
|
|
21
19
|
function error(message) {
|
|
22
20
|
return (0, chalk_1.red)((0, chalk_1.bold)(message));
|
|
23
21
|
}
|
|
22
|
+
function success(message) {
|
|
23
|
+
return (0, chalk_1.green)((0, chalk_1.bold)(message));
|
|
24
|
+
}
|
|
24
25
|
function table(responses, columns, options) {
|
|
25
26
|
// Interfaces cannot be casted to Record<string, unknown> so we have to cast to unknown first
|
|
26
27
|
// See https://github.com/microsoft/TypeScript/issues/15300
|
|
27
|
-
core_1.CliUx.ux.table(responses, columns, options);
|
|
28
|
+
core_1.CliUx.ux.table(responses, columns, options !== null && options !== void 0 ? options : {});
|
|
28
29
|
}
|
|
30
|
+
const check = (0, chalk_1.green)('✓');
|
|
29
31
|
function asRelativePaths(fileResponses) {
|
|
30
32
|
fileResponses.forEach((file) => {
|
|
31
33
|
if (file.filePath) {
|
|
@@ -66,6 +68,13 @@ function toArray(entryOrArray) {
|
|
|
66
68
|
return [];
|
|
67
69
|
}
|
|
68
70
|
exports.toArray = toArray;
|
|
71
|
+
function displayDeployResults(result, testLevel, verbose) {
|
|
72
|
+
displaySuccesses(result);
|
|
73
|
+
displayFailures(result);
|
|
74
|
+
displayDeletes(result);
|
|
75
|
+
displayTestResults(result, testLevel, verbose);
|
|
76
|
+
}
|
|
77
|
+
exports.displayDeployResults = displayDeployResults;
|
|
69
78
|
function displaySuccesses(result) {
|
|
70
79
|
var _a;
|
|
71
80
|
const fileResponses = asRelativePaths((_a = result.getFileResponses()) !== null && _a !== void 0 ? _a : []);
|
|
@@ -78,7 +87,7 @@ function displaySuccesses(result) {
|
|
|
78
87
|
type: { header: 'Type' },
|
|
79
88
|
filePath: { header: 'Path' },
|
|
80
89
|
};
|
|
81
|
-
const title = result instanceof
|
|
90
|
+
const title = result instanceof source_deploy_retrieve_1.DeployResult ? 'Deployed Source' : 'Retrieved Source';
|
|
82
91
|
const options = { title: info(title) };
|
|
83
92
|
core_1.CliUx.ux.log();
|
|
84
93
|
table(successes, columns, options);
|
|
@@ -88,7 +97,7 @@ function displayPackages(result, packages) {
|
|
|
88
97
|
if (packages === null || packages === void 0 ? void 0 : packages.length) {
|
|
89
98
|
const columns = {
|
|
90
99
|
name: { header: 'Package Name' },
|
|
91
|
-
|
|
100
|
+
fullPath: { header: 'Converted Location' },
|
|
92
101
|
};
|
|
93
102
|
const title = 'Retrieved Packages';
|
|
94
103
|
const options = { title: info(title) };
|
|
@@ -97,33 +106,23 @@ function displayPackages(result, packages) {
|
|
|
97
106
|
}
|
|
98
107
|
}
|
|
99
108
|
exports.displayPackages = displayPackages;
|
|
100
|
-
function displayTestResults(result, testLevel) {
|
|
109
|
+
function displayTestResults(result, testLevel, verbose = false) {
|
|
101
110
|
var _a, _b, _c, _d;
|
|
102
|
-
if (testLevel ===
|
|
111
|
+
if (testLevel === types_1.TestLevel.NoTestRun) {
|
|
103
112
|
core_1.CliUx.ux.log();
|
|
104
113
|
return;
|
|
105
114
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
core_1.CliUx.ux.log();
|
|
111
|
-
core_1.CliUx.ux.log(error(`Test Failures [${failureCount}]`));
|
|
112
|
-
for (const test of tests) {
|
|
113
|
-
const testName = (0, chalk_1.underline)(`${test.name}.${test.methodName}`);
|
|
114
|
-
const stackTrace = test.stackTrace.replace(/\n/g, `${os.EOL} `);
|
|
115
|
-
core_1.CliUx.ux.log(`• ${testName}`);
|
|
116
|
-
core_1.CliUx.ux.log(` ${(0, chalk_1.dim)('message')}: ${test.message}`);
|
|
117
|
-
core_1.CliUx.ux.log(` ${(0, chalk_1.dim)('stacktrace')}: ${os.EOL} ${stackTrace}`);
|
|
118
|
-
core_1.CliUx.ux.log();
|
|
119
|
-
}
|
|
115
|
+
displayVerboseTestFailures(result);
|
|
116
|
+
if (verbose) {
|
|
117
|
+
displayVerboseTestSuccesses(result);
|
|
118
|
+
displayVerboseTestCoverage(result);
|
|
120
119
|
}
|
|
121
120
|
core_1.CliUx.ux.log();
|
|
122
121
|
core_1.CliUx.ux.log(info('Test Results Summary'));
|
|
123
|
-
const passing = (
|
|
124
|
-
const failing = (
|
|
125
|
-
const total = (
|
|
126
|
-
const time = (
|
|
122
|
+
const passing = (_a = result.response.numberTestsCompleted) !== null && _a !== void 0 ? _a : 0;
|
|
123
|
+
const failing = (_b = result.response.numberTestErrors) !== null && _b !== void 0 ? _b : 0;
|
|
124
|
+
const total = (_c = result.response.numberTestsTotal) !== null && _c !== void 0 ? _c : 0;
|
|
125
|
+
const time = (_d = result.response.details.runTestResult.totalTime) !== null && _d !== void 0 ? _d : 0;
|
|
127
126
|
core_1.CliUx.ux.log(`Passing: ${passing}`);
|
|
128
127
|
core_1.CliUx.ux.log(`Failing: ${failing}`);
|
|
129
128
|
core_1.CliUx.ux.log(`Total: ${total}`);
|
|
@@ -131,9 +130,72 @@ function displayTestResults(result, testLevel) {
|
|
|
131
130
|
core_1.CliUx.ux.log(`Time: ${time}`);
|
|
132
131
|
}
|
|
133
132
|
exports.displayTestResults = displayTestResults;
|
|
133
|
+
function displayVerboseTestFailures(result) {
|
|
134
|
+
var _a, _b, _c;
|
|
135
|
+
if (!result.response.numberTestErrors)
|
|
136
|
+
return;
|
|
137
|
+
const failures = toArray((_b = (_a = result.response.details) === null || _a === void 0 ? void 0 : _a.runTestResult) === null || _b === void 0 ? void 0 : _b.failures);
|
|
138
|
+
const failureCount = (_c = result.response.details.runTestResult) === null || _c === void 0 ? void 0 : _c.numFailures;
|
|
139
|
+
const testFailures = sortTestResults(failures);
|
|
140
|
+
core_1.CliUx.ux.log();
|
|
141
|
+
core_1.CliUx.ux.log(error(`Test Failures [${failureCount}]`));
|
|
142
|
+
for (const test of testFailures) {
|
|
143
|
+
const testName = (0, chalk_1.underline)(`${test.name}.${test.methodName}`);
|
|
144
|
+
const stackTrace = test.stackTrace.replace(/\n/g, `${os.EOL} `);
|
|
145
|
+
core_1.CliUx.ux.log(`• ${testName}`);
|
|
146
|
+
core_1.CliUx.ux.log(` ${(0, chalk_1.dim)('message')}: ${test.message}`);
|
|
147
|
+
core_1.CliUx.ux.log(` ${(0, chalk_1.dim)('stacktrace')}: ${os.EOL} ${stackTrace}`);
|
|
148
|
+
core_1.CliUx.ux.log();
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
function displayVerboseTestSuccesses(result) {
|
|
152
|
+
var _a, _b;
|
|
153
|
+
const successes = toArray((_b = (_a = result.response.details) === null || _a === void 0 ? void 0 : _a.runTestResult) === null || _b === void 0 ? void 0 : _b.successes);
|
|
154
|
+
if (successes.length > 0) {
|
|
155
|
+
const testSuccesses = sortTestResults(successes);
|
|
156
|
+
core_1.CliUx.ux.log();
|
|
157
|
+
core_1.CliUx.ux.log(success(`Test Success [${successes.length}]`));
|
|
158
|
+
for (const test of testSuccesses) {
|
|
159
|
+
const testName = (0, chalk_1.underline)(`${test.name}.${test.methodName}`);
|
|
160
|
+
core_1.CliUx.ux.log(`${check} ${testName}`);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
function displayVerboseTestCoverage(result) {
|
|
165
|
+
var _a;
|
|
166
|
+
const codeCoverage = toArray((_a = result.response.details.runTestResult) === null || _a === void 0 ? void 0 : _a.codeCoverage);
|
|
167
|
+
if (codeCoverage.length) {
|
|
168
|
+
const coverage = codeCoverage.sort((a, b) => {
|
|
169
|
+
return a.name.toUpperCase() > b.name.toUpperCase() ? 1 : -1;
|
|
170
|
+
});
|
|
171
|
+
core_1.CliUx.ux.log();
|
|
172
|
+
core_1.CliUx.ux.log(info('Apex Code Coverage'));
|
|
173
|
+
coverage.map((cov) => {
|
|
174
|
+
const numLocationsNum = parseInt(cov.numLocations, 10);
|
|
175
|
+
const numLocationsNotCovered = parseInt(cov.numLocationsNotCovered, 10);
|
|
176
|
+
const color = numLocationsNotCovered > 0 ? chalk_1.red : chalk_1.green;
|
|
177
|
+
let pctCovered = 100;
|
|
178
|
+
const coverageDecimal = parseFloat(((numLocationsNum - numLocationsNotCovered) / numLocationsNum).toFixed(2));
|
|
179
|
+
if (numLocationsNum > 0) {
|
|
180
|
+
pctCovered = coverageDecimal * 100;
|
|
181
|
+
}
|
|
182
|
+
cov.numLocations = color(`${pctCovered}%`);
|
|
183
|
+
if (!cov.locationsNotCovered) {
|
|
184
|
+
cov.lineNotCovered = '';
|
|
185
|
+
}
|
|
186
|
+
const locations = toArray(cov.locationsNotCovered);
|
|
187
|
+
cov.lineNotCovered = locations.map((location) => location.line).join(',');
|
|
188
|
+
});
|
|
189
|
+
table(coverage, {
|
|
190
|
+
name: { header: 'Name' },
|
|
191
|
+
numLocations: { header: '% Covered' },
|
|
192
|
+
lineNotCovered: { header: 'Uncovered Lines' },
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
}
|
|
134
196
|
function displayFailures(result) {
|
|
135
197
|
var _a;
|
|
136
|
-
if (result.response.status ===
|
|
198
|
+
if (result.response.status === source_deploy_retrieve_1.RequestStatus.Succeeded)
|
|
137
199
|
return;
|
|
138
200
|
const fileResponses = asRelativePaths((_a = result.getFileResponses()) !== null && _a !== void 0 ? _a : []);
|
|
139
201
|
const failures = sortFileResponses(fileResponses.filter((f) => f.state === 'Failed'));
|
|
@@ -149,4 +211,40 @@ function displayFailures(result) {
|
|
|
149
211
|
table(failures, columns, options);
|
|
150
212
|
}
|
|
151
213
|
exports.displayFailures = displayFailures;
|
|
214
|
+
function displayDeletes(result) {
|
|
215
|
+
var _a;
|
|
216
|
+
const fileResponses = asRelativePaths((_a = result.getFileResponses()) !== null && _a !== void 0 ? _a : []);
|
|
217
|
+
const deletions = sortFileResponses(fileResponses.filter((f) => f.state === 'Deleted'));
|
|
218
|
+
if (!deletions.length)
|
|
219
|
+
return;
|
|
220
|
+
const columns = {
|
|
221
|
+
fullName: { header: 'Name' },
|
|
222
|
+
type: { header: 'Type' },
|
|
223
|
+
filePath: { header: 'Path' },
|
|
224
|
+
};
|
|
225
|
+
const options = { title: info('Deleted Source') };
|
|
226
|
+
core_1.CliUx.ux.log();
|
|
227
|
+
table(deletions, columns, options);
|
|
228
|
+
}
|
|
229
|
+
exports.displayDeletes = displayDeletes;
|
|
230
|
+
function getVersionMessage(action, componentSet, api) {
|
|
231
|
+
var _a;
|
|
232
|
+
// commands pass in the.componentSet, which may not exist in some tests or mdapi deploys
|
|
233
|
+
if (!componentSet) {
|
|
234
|
+
return `*** ${action} with ${api} ***`;
|
|
235
|
+
}
|
|
236
|
+
// neither
|
|
237
|
+
if (!componentSet.sourceApiVersion && !componentSet.apiVersion) {
|
|
238
|
+
return `*** ${action} with ${api} ***`;
|
|
239
|
+
}
|
|
240
|
+
// either OR both match (SDR will use either)
|
|
241
|
+
if (!componentSet.sourceApiVersion ||
|
|
242
|
+
!componentSet.apiVersion ||
|
|
243
|
+
componentSet.sourceApiVersion === componentSet.apiVersion) {
|
|
244
|
+
return `*** ${action} with ${api} API v${(_a = componentSet.apiVersion) !== null && _a !== void 0 ? _a : componentSet.sourceApiVersion} ***`;
|
|
245
|
+
}
|
|
246
|
+
// has both but they don't match
|
|
247
|
+
return `*** ${action} v${componentSet.sourceApiVersion} metadata with ${api} API v${componentSet.apiVersion} connection ***`;
|
|
248
|
+
}
|
|
249
|
+
exports.getVersionMessage = getVersionMessage;
|
|
152
250
|
//# sourceMappingURL=output.js.map
|
package/lib/utils/output.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,yBAAyB;AACzB,6BAA6B;AAC7B,sCAAoC;AACpC,
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"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"}
|