sfdx-hardis 5.2.4 → 5.3.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 CHANGED
@@ -4,6 +4,15 @@
4
4
 
5
5
  Note: Can be used with `sfdx plugins:install sfdx-hardis@beta` and docker image `hardisgroupcom/sfdx-hardis@beta`
6
6
 
7
+ ## [5.3.0] 2024-10-24
8
+
9
+ - Update default Monitoring workflow for GitHub
10
+ - Refactor file download code
11
+ - Display progress
12
+ - Better error handling
13
+ - hardis:org:diagnose:legacyapi: Fix issue with big log files: Use stream to parse CSV and perform checks
14
+ - Update default API version toto 62.0 (Winter 25 release)
15
+
7
16
  ## [5.2.4] 2024-10-21
8
17
 
9
18
  - Fix hardis:org:fix:listviewmine: Use chrome-launcher to find chrome executable to use with puppeteer-core
@@ -39,9 +39,10 @@ jobs:
39
39
  runs-on: ubuntu-latest
40
40
  name: Backup metadatas
41
41
  permissions: write-all
42
+ timeout-minutes: 360
42
43
  strategy:
43
44
  fail-fast: false
44
- max-parallel: 10
45
+ max-parallel: 10 # Set to 1 if you have issues with command npm install --no-cache @salesforce/cli --global
45
46
  matrix:
46
47
  # MANUAL: Add your monitored git branches here
47
48
  branch:
@@ -126,9 +127,10 @@ jobs:
126
127
  name: Apex tests
127
128
  needs: backup
128
129
  permissions: write-all
130
+ timeout-minutes: 360
129
131
  strategy:
130
132
  fail-fast: false
131
- max-parallel: 10
133
+ max-parallel: 10 # Set to 1 if you have issues with command npm install --no-cache @salesforce/cli --global
132
134
  matrix:
133
135
  # MANUAL: Add your monitored git branches here
134
136
  branch:
@@ -206,13 +208,25 @@ jobs:
206
208
  runs-on: ubuntu-latest
207
209
  needs: backup
208
210
  permissions: read-all
211
+ timeout-minutes: 360
212
+ strategy:
213
+ fail-fast: false
214
+ max-parallel: 10 # Set to 1 if you have issues with race conditions
215
+ matrix:
216
+ # MANUAL: Add your monitored git branches here
217
+ branch:
218
+ - monitoring_myclient
219
+ - monitoring_myclient__integ_sandbox
220
+ - monitoring_myclient__recette_sandbox
221
+ - monitoring_myclient__preprod_sandbox
209
222
  steps:
210
- # Git Checkout
211
- - name: Checkout Code
223
+ # Checkout repo
224
+ - name: Checkout code
212
225
  uses: actions/checkout@v4
213
226
  with:
214
- token: ${{ secrets.PAT || secrets.GITHUB_TOKEN }}
215
- fetch-depth: 0
227
+ fetch-depth: 0 # Faster code checkout fetching only latest commit
228
+ ref: ${{ matrix.branch }}
229
+ persist-credentials: true
216
230
 
217
231
  - name: Git pull
218
232
  run: git pull origin ${{ matrix.branch }}
@@ -253,9 +267,10 @@ jobs:
253
267
  name: Monitoring
254
268
  needs: backup
255
269
  permissions: read-all
270
+ timeout-minutes: 360
256
271
  strategy:
257
272
  fail-fast: false
258
- max-parallel: 10
273
+ max-parallel: 10 # Set to 1 if you have issues with command npm install --no-cache @salesforce/cli --global
259
274
  matrix:
260
275
  # MANUAL: Add your monitored git branches here
261
276
  branch:
@@ -20,6 +20,7 @@ export default class LegacyApi extends SfCommand<any> {
20
20
  protected ipResultsSorted: any[];
21
21
  protected outputFile: any;
22
22
  protected outputFilesRes: any;
23
+ private tempDir;
23
24
  run(): Promise<AnyJson>;
24
25
  private runJsForce;
25
26
  private collectDeprecatedApiCalls;
@@ -2,15 +2,19 @@
2
2
  import { SfCommand, Flags, requiredOrgFlagWithDeprecations } from '@salesforce/sf-plugins-core';
3
3
  import { Messages } from '@salesforce/core';
4
4
  import c from 'chalk';
5
+ import fs from 'fs-extra';
6
+ import * as path from 'path';
5
7
  import sortArray from 'sort-array';
6
- import { uxLog } from '../../../../common/utils/index.js';
8
+ import { createTempDir, uxLog } from '../../../../common/utils/index.js';
7
9
  import * as dns from 'dns';
10
+ import Papa from 'papaparse';
8
11
  import { getNotificationButtons, getOrgMarkdown, getSeverityIcon } from '../../../../common/utils/notifUtils.js';
9
12
  import { soqlQuery } from '../../../../common/utils/apiUtils.js';
10
13
  import { WebSocketClient } from '../../../../common/websocketClient.js';
11
14
  import { NotifProvider } from '../../../../common/notifProvider/index.js';
12
15
  import { generateCsvFile, generateReportPath } from '../../../../common/utils/filesUtils.js';
13
16
  import { CONSTANTS } from '../../../../config/index.js';
17
+ import { FileDownloader } from '../../../../common/utils/fileDownloader.js';
14
18
  const dnsPromises = dns.promises;
15
19
  Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
16
20
  const messages = Messages.loadMessages('sfdx-hardis', 'org');
@@ -93,6 +97,7 @@ This command is part of [sfdx-hardis Monitoring](${CONSTANTS.DOC_URL_ROOT}/sales
93
97
  outputFile;
94
98
  outputFilesRes = {};
95
99
  /* jscpd:ignore-end */
100
+ tempDir;
96
101
  async run() {
97
102
  const { flags } = await this.parse(LegacyApi);
98
103
  this.debugMode = flags.debug || false;
@@ -105,6 +110,7 @@ This command is part of [sfdx-hardis Monitoring](${CONSTANTS.DOC_URL_ROOT}/sales
105
110
  this.outputFile = flags.outputfile || null;
106
111
  const limitConstraint = limit ? ` LIMIT ${limit}` : '';
107
112
  const conn = flags['target-org'].getConnection();
113
+ this.tempDir = await createTempDir();
108
114
  // Get EventLogFile records with EventType = 'ApiTotalUsage'
109
115
  const logCountQuery = `SELECT COUNT() FROM EventLogFile WHERE EventType = '${eventType}'`;
110
116
  const logCountRes = await soqlQuery(logCountQuery, conn);
@@ -119,7 +125,7 @@ This command is part of [sfdx-hardis Monitoring](${CONSTANTS.DOC_URL_ROOT}/sales
119
125
  uxLog(this, c.yellow(`There are more than ${limit} results, you may consider to increase limit using --limit argument`));
120
126
  }
121
127
  // Fetch EventLogFiles with ApiTotalUsage entries
122
- const logCollectQuery = `SELECT LogFile FROM EventLogFile WHERE EventType = '${eventType}' ORDER BY CreatedDate DESC` + limitConstraint;
128
+ const logCollectQuery = `SELECT LogFile FROM EventLogFile WHERE EventType = '${eventType}' ORDER BY LogDate DESC` + limitConstraint;
123
129
  uxLog(this, c.grey('Query: ' + c.italic(logCollectQuery)));
124
130
  const eventLogRes = await soqlQuery(logCollectQuery, conn);
125
131
  // Collect legacy api calls from logs
@@ -232,39 +238,63 @@ See article to solve issue before it's too late:
232
238
  }
233
239
  // GET csv log file and check for legacy API calls within
234
240
  async collectDeprecatedApiCalls(logFileUrl, conn) {
235
- uxLog(this, c.grey(`- Request info for ${logFileUrl} ...`));
236
- const logEntries = await conn.request(logFileUrl);
237
- uxLog(this, c.grey(`-- Processing ${logEntries.length} returned entries...`));
241
+ // Load icons
238
242
  const severityIconError = getSeverityIcon('error');
239
243
  const severityIconWarning = getSeverityIcon('warning');
240
244
  const severityIconInfo = getSeverityIcon('info');
241
- for (const logEntry of logEntries) {
242
- const apiVersion = logEntry.API_VERSION ? parseFloat(logEntry.API_VERSION) : parseFloat('999.0');
243
- // const apiType = logEntry.API_TYPE || null ;
244
- const apiFamily = logEntry.API_FAMILY || null;
245
- for (const legacyApiDescriptor of this.legacyApiDescriptors) {
246
- if (legacyApiDescriptor.apiFamily.includes(apiFamily) &&
247
- legacyApiDescriptor.minApiVersion <= apiVersion &&
248
- legacyApiDescriptor.maxApiVersion >= apiVersion) {
249
- logEntry.SFDX_HARDIS_DEPRECATION_RELEASE = legacyApiDescriptor.deprecationRelease;
250
- logEntry.SFDX_HARDIS_SEVERITY = legacyApiDescriptor.severity;
251
- if (legacyApiDescriptor.severity === 'ERROR') {
252
- logEntry.severity = 'error';
253
- logEntry.severityIcon = severityIconError;
254
- }
255
- else if (legacyApiDescriptor.severity === 'WARNING') {
256
- logEntry.severity = 'warning';
257
- logEntry.severityIcon = severityIconWarning;
258
- }
259
- else {
260
- // severity === 'INFO'
261
- logEntry.severity = 'info';
262
- logEntry.severityIcon = severityIconInfo;
263
- }
264
- legacyApiDescriptor.errors.push(logEntry);
265
- break;
266
- }
267
- }
245
+ // Download file as stream, and process chuck by chuck
246
+ uxLog(this, c.grey(`- processing ${logFileUrl}...`));
247
+ const fetchUrl = `${conn.instanceUrl}${logFileUrl}`;
248
+ const outputFile = path.join(this.tempDir, Math.random().toString(36).substring(7) + ".csv");
249
+ const downloadResult = await new FileDownloader(fetchUrl, { conn: conn, outputFile: outputFile }).download();
250
+ if (downloadResult.success) {
251
+ uxLog(this, c.grey(`-- parsing downloaded CSV from ${outputFile} and check for deprecated calls...`));
252
+ const outputFileStream = fs.createReadStream(outputFile, { encoding: 'utf8' });
253
+ await new Promise((resolve, reject) => {
254
+ Papa.parse(outputFileStream, {
255
+ header: true,
256
+ worker: true,
257
+ chunk: (results) => {
258
+ // Look in check the entries that match a deprecation description
259
+ for (const logEntry of results.data) {
260
+ const apiVersion = logEntry.API_VERSION ? parseFloat(logEntry.API_VERSION) : parseFloat('999.0');
261
+ const apiFamily = logEntry.API_FAMILY || null;
262
+ for (const legacyApiDescriptor of this.legacyApiDescriptors) {
263
+ if (legacyApiDescriptor.apiFamily.includes(apiFamily) &&
264
+ legacyApiDescriptor.minApiVersion <= apiVersion &&
265
+ legacyApiDescriptor.maxApiVersion >= apiVersion) {
266
+ logEntry.SFDX_HARDIS_DEPRECATION_RELEASE = legacyApiDescriptor.deprecationRelease;
267
+ logEntry.SFDX_HARDIS_SEVERITY = legacyApiDescriptor.severity;
268
+ if (legacyApiDescriptor.severity === 'ERROR') {
269
+ logEntry.severity = 'error';
270
+ logEntry.severityIcon = severityIconError;
271
+ }
272
+ else if (legacyApiDescriptor.severity === 'WARNING') {
273
+ logEntry.severity = 'warning';
274
+ logEntry.severityIcon = severityIconWarning;
275
+ }
276
+ else {
277
+ // severity === 'INFO'
278
+ logEntry.severity = 'info';
279
+ logEntry.severityIcon = severityIconInfo;
280
+ }
281
+ legacyApiDescriptor.errors.push(logEntry);
282
+ break;
283
+ }
284
+ }
285
+ }
286
+ },
287
+ complete: function () {
288
+ resolve(true);
289
+ },
290
+ error: function (error) {
291
+ reject(error);
292
+ },
293
+ });
294
+ });
295
+ }
296
+ else {
297
+ uxLog(this, c.yellow(`Warning: Unable to process logs of ${logFileUrl}`));
268
298
  }
269
299
  }
270
300
  async generateSummaryLog(errors, severity) {
@@ -1 +1 @@
1
- {"version":3,"file":"legacyapi.js","sourceRoot":"","sources":["../../../../../src/commands/hardis/org/diagnose/legacyapi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"legacyapi.js","sourceRoot":"","sources":["../../../../../src/commands/hardis/org/diagnose/legacyapi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { Connection } from "@salesforce/core";
2
+ import { FetchOptions } from 'make-fetch-happen';
3
+ export declare class FileDownloader {
4
+ conn: Connection;
5
+ downloadUrl: string;
6
+ outputFile: string | null;
7
+ fetchOptions: any;
8
+ label: string;
9
+ constructor(downloadUrl: string, options: {
10
+ conn?: any;
11
+ outputFile?: string;
12
+ fetchOptions?: FetchOptions;
13
+ label?: 'url' | 'file' | 'both';
14
+ });
15
+ download(): Promise<{
16
+ success: boolean;
17
+ outputFile: string;
18
+ error?: any;
19
+ }>;
20
+ }
@@ -0,0 +1,86 @@
1
+ import { SfError } from "@salesforce/core";
2
+ import fs from 'fs-extra';
3
+ import ora from "ora";
4
+ import * as path from "path";
5
+ import { createTempDir } from "./index.js";
6
+ import makeFetchHappen from 'make-fetch-happen';
7
+ export class FileDownloader {
8
+ conn;
9
+ downloadUrl;
10
+ outputFile = null;
11
+ fetchOptions = {};
12
+ label;
13
+ constructor(downloadUrl, options) {
14
+ this.conn = options.conn || null;
15
+ this.downloadUrl = downloadUrl;
16
+ this.outputFile = options.outputFile || null;
17
+ this.label = options?.label === 'file'
18
+ ? (path.relative(process.cwd(), this.outputFile || "")) || this.downloadUrl
19
+ : options?.label === 'both'
20
+ ? `${this.outputFile} from ${this.downloadUrl}`
21
+ : this.downloadUrl;
22
+ // Build fetch options for HTTP calls to retrieve document files
23
+ this.fetchOptions = options.fetchOptions || {
24
+ method: 'GET',
25
+ headers: {
26
+ Authorization: 'Bearer ' + this.conn.accessToken,
27
+ 'Content-Type': 'blob',
28
+ // "X-PrettyPrint": '1'
29
+ },
30
+ retry: {
31
+ retries: 20,
32
+ factor: 3,
33
+ randomize: true,
34
+ },
35
+ };
36
+ }
37
+ async download() {
38
+ const spinnerCustom = ora({
39
+ text: `Downloading ${this.label}...`,
40
+ spinner: 'moon',
41
+ }).start();
42
+ if (this.outputFile == null) {
43
+ const tempDir = await createTempDir();
44
+ this.outputFile = path.join(tempDir, Math.random().toString(36).substring(7));
45
+ }
46
+ try {
47
+ this.fetchOptions.onRetry = (cause) => {
48
+ spinnerCustom.text = `Retrying ${this.label} (${cause})...`;
49
+ };
50
+ const fetchRes = await makeFetchHappen(this.downloadUrl, this.fetchOptions);
51
+ if (!fetchRes.ok) {
52
+ throw new SfError(`Fetch error: ${JSON.stringify(fetchRes.body)}`);
53
+ }
54
+ const stream = fs.createWriteStream(this.outputFile);
55
+ const totalSize = Number(fetchRes.headers.get('content-length'));
56
+ let downloadedSize = 0;
57
+ // Set up piping first
58
+ fetchRes.body.pipe(stream);
59
+ fetchRes.body.on('data', (chunk) => {
60
+ downloadedSize += chunk.length;
61
+ const percentComplete = totalSize ? (downloadedSize / totalSize * 100).toFixed(2) : null;
62
+ spinnerCustom.text = totalSize
63
+ ? `Downloaded ${downloadedSize} bytes of ${totalSize} bytes (${percentComplete}%) of ${this.label}`
64
+ : `Downloaded ${downloadedSize} bytes of ${this.label}`;
65
+ });
66
+ // Handle end of download, or error
67
+ await new Promise((resolve, reject) => {
68
+ fetchRes.body.on("error", reject);
69
+ stream.on("error", reject);
70
+ stream.on("finish", resolve);
71
+ });
72
+ const fileExists = await fs.exists(this.outputFile);
73
+ if (!fileExists) {
74
+ throw new SfError(`Download error: Download stream ok but no created file at ${this.outputFile}`);
75
+ }
76
+ spinnerCustom.succeed(`Downloaded ${this.label}`);
77
+ stream.destroy();
78
+ }
79
+ catch (err) {
80
+ spinnerCustom.fail(`Error while downloading ${this.downloadUrl}: ${err.message}`);
81
+ return { success: false, outputFile: this.outputFile, error: err };
82
+ }
83
+ return { success: true, outputFile: this.outputFile };
84
+ }
85
+ }
86
+ //# sourceMappingURL=fileDownloader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileDownloader.js","sourceRoot":"","sources":["../../../src/common/utils/fileDownloader.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,6 @@ export declare class FilesExporter {
7
7
  private recordsChunkSize;
8
8
  private startChunkNumber;
9
9
  private commandThis;
10
- private fetchOptions;
11
10
  private dtl;
12
11
  private exportedFilesFolder;
13
12
  private recordsChunk;
@@ -2,7 +2,6 @@
2
2
  import fs from 'fs-extra';
3
3
  import * as path from 'path';
4
4
  import c from 'chalk';
5
- import makeFetchHappen from 'make-fetch-happen';
6
5
  import * as split from 'split';
7
6
  import { PromisePool } from '@supercharge/promise-pool';
8
7
  // Salesforce Specific and Other Specific Libraries
@@ -15,7 +14,7 @@ import { bulkQuery, soqlQuery } from './apiUtils.js';
15
14
  import { prompts } from './prompts.js';
16
15
  import { CONSTANTS, getReportDirectory } from '../../config/index.js';
17
16
  import { WebSocketClient } from '../websocketClient.js';
18
- import ora from 'ora';
17
+ import { FileDownloader } from './fileDownloader.js';
19
18
  export const filesFolderRoot = path.join('.', 'scripts', 'files');
20
19
  export class FilesExporter {
21
20
  filesPath;
@@ -24,7 +23,6 @@ export class FilesExporter {
24
23
  recordsChunkSize;
25
24
  startChunkNumber;
26
25
  commandThis;
27
- fetchOptions;
28
26
  dtl = null; // export config
29
27
  exportedFilesFolder = '';
30
28
  recordsChunk = [];
@@ -54,19 +52,6 @@ export class FilesExporter {
54
52
  if (options.exportConfig) {
55
53
  this.dtl = options.exportConfig;
56
54
  }
57
- // Build fetch options for HTTP calls to retrieve document files
58
- this.fetchOptions = {
59
- method: 'GET',
60
- headers: {
61
- Authorization: 'Bearer ' + this.conn.accessToken,
62
- 'Content-Type': 'blob',
63
- },
64
- retry: {
65
- retries: 20,
66
- factor: 3,
67
- randomize: true,
68
- },
69
- };
70
55
  }
71
56
  async processExport() {
72
57
  // Get config
@@ -251,7 +236,6 @@ export class FilesExporter {
251
236
  outputFile =
252
237
  outputFile + '.' + (contentVersion.FileExtension !== 'snote' ? contentVersion.FileExtension : 'html');
253
238
  }
254
- const outputFileLabel = path.relative(process.cwd(), outputFile);
255
239
  // Check file extension
256
240
  if (this.dtl.fileTypes !== 'all' && !this.dtl.fileTypes.includes(contentVersion.FileType)) {
257
241
  uxLog(this, c.grey(`Skipped - ${outputFile.replace(this.exportedFilesFolder, '')} - File type ignored`));
@@ -267,36 +251,12 @@ export class FilesExporter {
267
251
  // Create directory if not existing
268
252
  await fs.ensureDir(parentRecordFolderForFiles);
269
253
  // Download file locally
270
- const spinnerCustom = ora({
271
- text: `(${(this.filesDownloaded + 1)}) Downloading ${outputFileLabel}...`,
272
- spinner: 'moon',
273
- }).start();
274
254
  const fetchUrl = `${this.conn.instanceUrl}/services/data/v${CONSTANTS.API_VERSION}/sobjects/ContentVersion/${contentVersion.Id}/VersionData`;
275
- try {
276
- this.fetchOptions.onRetry = (cause) => {
277
- spinnerCustom.text = `(${this.filesDownloaded}) Retrying ${outputFileLabel} (${cause})...`;
278
- };
279
- const fetchRes = await makeFetchHappen(fetchUrl, this.fetchOptions);
280
- if (fetchRes.ok !== true) {
281
- throw new SfError(`Fetch error - ${fetchUrl} - + ${JSON.stringify(fetchRes.body)}`);
282
- }
283
- // Wait for file to be written
284
- const stream = fs.createWriteStream(outputFile);
285
- fetchRes.body.pipe(stream);
286
- /*
287
- await new Promise(resolve => {
288
- stream.on('finish', function() {
289
- resolve(true);
290
- });
291
- }) */
292
- // uxLog(this, c.green(`Success - ${path.relative(process.cwd(), outputFile)}`));
255
+ const downloadResult = await new FileDownloader(fetchUrl, { conn: this.conn, outputFile: outputFile, label: 'file' }).download();
256
+ if (downloadResult.success) {
293
257
  this.filesDownloaded++;
294
- spinnerCustom.succeed(`(${this.filesDownloaded}) Downloaded ${outputFileLabel}`);
295
258
  }
296
- catch (err) {
297
- // Download failure
298
- // uxLog(this, c.red(`Error - ${path.relative(process.cwd(), outputFile)} - ${err}`));
299
- spinnerCustom.fail(`(${this.filesDownloaded}) Error while downloading ${outputFileLabel}: ${err.message}`);
259
+ else {
300
260
  this.filesErrors++;
301
261
  }
302
262
  }
@@ -1 +1 @@
1
- {"version":3,"file":"filesUtils.js","sourceRoot":"","sources":["../../../src/common/utils/filesUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filesUtils.js","sourceRoot":"","sources":["../../../src/common/utils/filesUtils.ts"],"names":[],"mappings":"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"}