@code-pushup/ci 0.91.0 → 0.92.1
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/package.json +4 -3
- package/src/lib/cli/exec.d.ts +6 -0
- package/src/lib/cli/exec.js +47 -29
- package/src/lib/cli/exec.js.map +1 -1
- package/src/lib/comment.js +6 -6
- package/src/lib/comment.js.map +1 -1
- package/src/lib/log.d.ts +27 -0
- package/src/lib/log.js +43 -0
- package/src/lib/log.js.map +1 -0
- package/src/lib/monorepo/list-projects.js +10 -10
- package/src/lib/monorepo/list-projects.js.map +1 -1
- package/src/lib/output-files.js +3 -2
- package/src/lib/output-files.js.map +1 -1
- package/src/lib/run-monorepo.js +13 -12
- package/src/lib/run-monorepo.js.map +1 -1
- package/src/lib/run-standalone.js +2 -2
- package/src/lib/run-standalone.js.map +1 -1
- package/src/lib/run-utils.js +22 -21
- package/src/lib/run-utils.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@code-pushup/ci",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.92.1",
|
|
4
4
|
"description": "CI automation logic for Code PushUp (provider-agnostic)",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/code-pushup/cli/tree/main/packages/ci#readme",
|
|
@@ -26,9 +26,10 @@
|
|
|
26
26
|
},
|
|
27
27
|
"type": "module",
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@code-pushup/models": "0.
|
|
29
|
+
"@code-pushup/models": "0.92.1",
|
|
30
30
|
"@code-pushup/portal-client": "^0.16.0",
|
|
31
|
-
"@code-pushup/utils": "0.
|
|
31
|
+
"@code-pushup/utils": "0.92.1",
|
|
32
|
+
"ansis": "^3.3.2",
|
|
32
33
|
"glob": "^11.0.1",
|
|
33
34
|
"simple-git": "^3.20.0",
|
|
34
35
|
"yaml": "^2.5.1",
|
package/src/lib/cli/exec.d.ts
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import type { CommandContext } from './context.js';
|
|
2
|
+
/**
|
|
3
|
+
* Executes Code PushUp CLI command and logs output in a way that's more readable in CI.
|
|
4
|
+
* @param args Arguments for Code PushUp CLI
|
|
5
|
+
* @param context Command context
|
|
6
|
+
* @param options Optional information on whether all persist formats are set (if known)
|
|
7
|
+
*/
|
|
2
8
|
export declare function executeCliCommand(args: string[], context: CommandContext, options?: {
|
|
3
9
|
hasFormats: boolean;
|
|
4
10
|
}): Promise<void>;
|
package/src/lib/cli/exec.js
CHANGED
|
@@ -1,9 +1,47 @@
|
|
|
1
1
|
import { DEFAULT_PERSIST_FORMAT } from '@code-pushup/models';
|
|
2
2
|
import { executeProcess, logger, serializeCommandWithArgs, } from '@code-pushup/utils';
|
|
3
|
+
/**
|
|
4
|
+
* Executes Code PushUp CLI command and logs output in a way that's more readable in CI.
|
|
5
|
+
* @param args Arguments for Code PushUp CLI
|
|
6
|
+
* @param context Command context
|
|
7
|
+
* @param options Optional information on whether all persist formats are set (if known)
|
|
8
|
+
*/
|
|
3
9
|
export async function executeCliCommand(args, context, options) {
|
|
10
|
+
const { logOutputChunk, logOutputEnd, logSilencedOutput } = createLogCallbacks(context);
|
|
11
|
+
const observer = {
|
|
12
|
+
onStdout: logOutputChunk,
|
|
13
|
+
onStderr: logOutputChunk,
|
|
14
|
+
onComplete: logOutputEnd,
|
|
15
|
+
onError: logOutputEnd,
|
|
16
|
+
};
|
|
17
|
+
const config = {
|
|
18
|
+
command: context.bin,
|
|
19
|
+
args: combineArgs(args, context, options),
|
|
20
|
+
cwd: context.directory,
|
|
21
|
+
observer,
|
|
22
|
+
silent: true,
|
|
23
|
+
};
|
|
24
|
+
const bin = serializeCommandWithArgs(config);
|
|
25
|
+
try {
|
|
26
|
+
await logger.command(bin, async () => {
|
|
27
|
+
try {
|
|
28
|
+
await executeProcess(config);
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
// ensure output of failed process is always logged for debugging
|
|
32
|
+
logSilencedOutput();
|
|
33
|
+
throw error;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
finally {
|
|
38
|
+
logger.newline();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function createLogCallbacks(context) {
|
|
4
42
|
// eslint-disable-next-line functional/no-let
|
|
5
43
|
let output = '';
|
|
6
|
-
const
|
|
44
|
+
const logOutputChunk = (message) => {
|
|
7
45
|
if (!context.silent) {
|
|
8
46
|
if (!output) {
|
|
9
47
|
logger.newline();
|
|
@@ -12,41 +50,21 @@ export async function executeCliCommand(args, context, options) {
|
|
|
12
50
|
}
|
|
13
51
|
output += message;
|
|
14
52
|
};
|
|
15
|
-
const
|
|
53
|
+
const logOutputEnd = () => {
|
|
16
54
|
if (!context.silent && output) {
|
|
17
55
|
logger.newline();
|
|
18
56
|
}
|
|
19
57
|
};
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
26
|
-
const config = {
|
|
27
|
-
command: context.bin,
|
|
28
|
-
args: combineArgs(args, context, options),
|
|
29
|
-
cwd: context.directory,
|
|
30
|
-
observer,
|
|
31
|
-
silent: true,
|
|
32
|
-
};
|
|
33
|
-
const bin = serializeCommandWithArgs(config);
|
|
34
|
-
await logger.command(bin, async () => {
|
|
35
|
-
try {
|
|
36
|
-
await executeProcess(config);
|
|
37
|
-
}
|
|
38
|
-
catch (error) {
|
|
39
|
-
// ensure output of failed process is always logged for debugging
|
|
40
|
-
if (context.silent) {
|
|
58
|
+
const logSilencedOutput = () => {
|
|
59
|
+
if (context.silent) {
|
|
60
|
+
logger.newline();
|
|
61
|
+
logger.info(output, { noIndent: true });
|
|
62
|
+
if (!output.endsWith('\n')) {
|
|
41
63
|
logger.newline();
|
|
42
|
-
logger.info(output, { noIndent: true });
|
|
43
|
-
if (!output.endsWith('\n')) {
|
|
44
|
-
logger.newline();
|
|
45
|
-
}
|
|
46
64
|
}
|
|
47
|
-
throw error;
|
|
48
65
|
}
|
|
49
|
-
}
|
|
66
|
+
};
|
|
67
|
+
return { logOutputChunk, logOutputEnd, logSilencedOutput };
|
|
50
68
|
}
|
|
51
69
|
function combineArgs(args, context, options) {
|
|
52
70
|
return [
|
package/src/lib/cli/exec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../../../src/lib/cli/exec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAGL,cAAc,EACd,MAAM,EACN,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAc,EACd,OAAuB,EACvB,OAAiC;IAEjC,
|
|
1
|
+
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../../../src/lib/cli/exec.ts"],"names":[],"mappings":"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"}
|
package/src/lib/comment.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { readFile } from 'node:fs/promises';
|
|
2
|
-
import {
|
|
2
|
+
import { logDebug, logInfo, logWarning } from './log.js';
|
|
3
3
|
export async function commentOnPR(mdPath, api, settings) {
|
|
4
4
|
const markdown = await readFile(mdPath, 'utf8');
|
|
5
5
|
const identifier = settings.jobId
|
|
@@ -7,24 +7,24 @@ export async function commentOnPR(mdPath, api, settings) {
|
|
|
7
7
|
: '<!-- generated by @code-pushup/ci -->';
|
|
8
8
|
const body = truncateBody(`${markdown}\n\n${identifier}\n`, api.maxCommentChars);
|
|
9
9
|
const comments = await api.listComments();
|
|
10
|
-
|
|
10
|
+
logDebug(`Fetched ${comments.length} comments for pull request`);
|
|
11
11
|
const prevComment = comments.find(comment => comment.body.includes(identifier));
|
|
12
|
-
|
|
12
|
+
logDebug(prevComment
|
|
13
13
|
? `Found previous comment ${prevComment.id} from Code PushUp`
|
|
14
14
|
: 'Previous Code PushUp comment not found');
|
|
15
15
|
if (prevComment) {
|
|
16
16
|
const updatedComment = await api.updateComment(prevComment.id, body);
|
|
17
|
-
|
|
17
|
+
logInfo(`Updated body of comment ${updatedComment.url}`);
|
|
18
18
|
return updatedComment.id;
|
|
19
19
|
}
|
|
20
20
|
const createdComment = await api.createComment(body);
|
|
21
|
-
|
|
21
|
+
logInfo(`Created new comment ${createdComment.url}`);
|
|
22
22
|
return createdComment.id;
|
|
23
23
|
}
|
|
24
24
|
function truncateBody(body, max) {
|
|
25
25
|
const truncateWarning = '...*[Comment body truncated]*';
|
|
26
26
|
if (body.length > max) {
|
|
27
|
-
|
|
27
|
+
logWarning(`Comment body is too long. Truncating to ${max} characters.`);
|
|
28
28
|
return body.slice(0, max - truncateWarning.length) + truncateWarning;
|
|
29
29
|
}
|
|
30
30
|
return body;
|
package/src/lib/comment.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comment.js","sourceRoot":"","sources":["../../../src/lib/comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"comment.js","sourceRoot":"","sources":["../../../src/lib/comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGzD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAc,EACd,GAAsB,EACtB,QAAiC;IAEjC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK;QAC/B,CAAC,CAAC,4CAA4C,QAAQ,CAAC,KAAK,OAAO;QACnE,CAAC,CAAC,uCAAuC,CAAC;IAC5C,MAAM,IAAI,GAAG,YAAY,CACvB,GAAG,QAAQ,OAAO,UAAU,IAAI,EAChC,GAAG,CAAC,eAAe,CACpB,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,YAAY,EAAE,CAAC;IAC1C,QAAQ,CAAC,WAAW,QAAQ,CAAC,MAAM,4BAA4B,CAAC,CAAC;IAEjE,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAC1C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAClC,CAAC;IACF,QAAQ,CACN,WAAW;QACT,CAAC,CAAC,0BAA0B,WAAW,CAAC,EAAE,mBAAmB;QAC7D,CAAC,CAAC,wCAAwC,CAC7C,CAAC;IAEF,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACrE,OAAO,CAAC,2BAA2B,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC;QACzD,OAAO,cAAc,CAAC,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACrD,OAAO,CAAC,uBAAuB,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC;IACrD,OAAO,cAAc,CAAC,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,GAAW;IAC7C,MAAM,eAAe,GAAG,+BAA+B,CAAC;IACxD,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACtB,UAAU,CAAC,2CAA2C,GAAG,cAAc,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC;IACvE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/src/lib/log.d.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logs error message with top-level CI log styles (lines prefixed with logo, ends in empty line).
|
|
3
|
+
* @param message Log message
|
|
4
|
+
*/
|
|
5
|
+
export declare function logError(message: string): void;
|
|
6
|
+
/**
|
|
7
|
+
* Logs warning message with top-level CI log styles (lines prefixed with logo, ends in empty line).
|
|
8
|
+
* @param message Log message
|
|
9
|
+
*/
|
|
10
|
+
export declare function logWarning(message: string): void;
|
|
11
|
+
/**
|
|
12
|
+
* Logs info message with top-level CI log styles (lines prefixed with logo, ends in empty line).
|
|
13
|
+
* @param message Log message
|
|
14
|
+
*/
|
|
15
|
+
export declare function logInfo(message: string): void;
|
|
16
|
+
/**
|
|
17
|
+
* Logs debug message with top-level CI log styles (lines prefixed with logo, ends in empty line).
|
|
18
|
+
* @param message Log message
|
|
19
|
+
*/
|
|
20
|
+
export declare function logDebug(message: string): void;
|
|
21
|
+
/**
|
|
22
|
+
* Prefixes CI logs with logo and ensures each CI log is followed by an empty line.
|
|
23
|
+
* This is to make top-level CI logs more visually distinct from printed process logs.
|
|
24
|
+
* @param level Log level
|
|
25
|
+
* @param message Log message
|
|
26
|
+
*/
|
|
27
|
+
export declare function log(level: 'error' | 'warn' | 'info' | 'debug', message: string): void;
|
package/src/lib/log.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import ansis from 'ansis';
|
|
2
|
+
import { CODE_PUSHUP_UNICODE_LOGO, logger, transformLines, } from '@code-pushup/utils';
|
|
3
|
+
const LOG_PREFIX = ansis.bold.blue(CODE_PUSHUP_UNICODE_LOGO);
|
|
4
|
+
/**
|
|
5
|
+
* Logs error message with top-level CI log styles (lines prefixed with logo, ends in empty line).
|
|
6
|
+
* @param message Log message
|
|
7
|
+
*/
|
|
8
|
+
export function logError(message) {
|
|
9
|
+
log('error', message);
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Logs warning message with top-level CI log styles (lines prefixed with logo, ends in empty line).
|
|
13
|
+
* @param message Log message
|
|
14
|
+
*/
|
|
15
|
+
export function logWarning(message) {
|
|
16
|
+
log('warn', message);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Logs info message with top-level CI log styles (lines prefixed with logo, ends in empty line).
|
|
20
|
+
* @param message Log message
|
|
21
|
+
*/
|
|
22
|
+
export function logInfo(message) {
|
|
23
|
+
log('info', message);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Logs debug message with top-level CI log styles (lines prefixed with logo, ends in empty line).
|
|
27
|
+
* @param message Log message
|
|
28
|
+
*/
|
|
29
|
+
export function logDebug(message) {
|
|
30
|
+
log('debug', message);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Prefixes CI logs with logo and ensures each CI log is followed by an empty line.
|
|
34
|
+
* This is to make top-level CI logs more visually distinct from printed process logs.
|
|
35
|
+
* @param level Log level
|
|
36
|
+
* @param message Log message
|
|
37
|
+
*/
|
|
38
|
+
export function log(level, message) {
|
|
39
|
+
const prefixedLines = transformLines(message.trim(), line => `${LOG_PREFIX} ${line}`);
|
|
40
|
+
const styledMessage = `${prefixedLines}\n`;
|
|
41
|
+
logger[level](styledMessage);
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../../src/lib/log.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,wBAAwB,EACxB,MAAM,EACN,cAAc,GACf,MAAM,oBAAoB,CAAC;AAE5B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AAE7D;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAe;IACtC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,OAAe;IACrC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAe;IACtC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,GAAG,CACjB,KAA0C,EAC1C,OAAe;IAEf,MAAM,aAAa,GAAG,cAAc,CAClC,OAAO,CAAC,IAAI,EAAE,EACd,IAAI,CAAC,EAAE,CAAC,GAAG,UAAU,IAAI,IAAI,EAAE,CAChC,CAAC;IACF,MAAM,aAAa,GAAG,GAAG,aAAa,IAAI,CAAC;IAE3C,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { glob } from 'glob';
|
|
2
2
|
import path from 'node:path';
|
|
3
|
-
import {
|
|
3
|
+
import { logDebug, logInfo } from '../log.js';
|
|
4
4
|
import { detectMonorepoTool } from './detect-tool.js';
|
|
5
5
|
import { getToolHandler } from './handlers/index.js';
|
|
6
6
|
import { listPackages } from './packages.js';
|
|
@@ -10,8 +10,8 @@ export async function listMonorepoProjects(settings) {
|
|
|
10
10
|
if (tool) {
|
|
11
11
|
const handler = getToolHandler(tool);
|
|
12
12
|
const projects = await handler.listProjects(options);
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
logInfo(`Found ${projects.length} projects in ${tool} monorepo`);
|
|
14
|
+
logDebug(`Projects: ${projects.map(({ name }) => name).join(', ')}`);
|
|
15
15
|
return {
|
|
16
16
|
tool,
|
|
17
17
|
projects,
|
|
@@ -41,15 +41,15 @@ async function resolveMonorepoTool(settings, options) {
|
|
|
41
41
|
throw new Error('Monorepo mode not enabled');
|
|
42
42
|
}
|
|
43
43
|
if (typeof settings.monorepo === 'string') {
|
|
44
|
-
|
|
44
|
+
logInfo(`Using monorepo tool "${settings.monorepo}" from inputs`);
|
|
45
45
|
return settings.monorepo;
|
|
46
46
|
}
|
|
47
47
|
const tool = await detectMonorepoTool(options);
|
|
48
48
|
if (tool) {
|
|
49
|
-
|
|
49
|
+
logInfo(`Auto-detected monorepo tool ${tool}`);
|
|
50
50
|
}
|
|
51
51
|
else {
|
|
52
|
-
|
|
52
|
+
logInfo("Couldn't auto-detect any supported monorepo tool");
|
|
53
53
|
}
|
|
54
54
|
return tool;
|
|
55
55
|
}
|
|
@@ -64,8 +64,8 @@ function createMonorepoHandlerOptions({ task, directory, parallel, nxProjectsFil
|
|
|
64
64
|
async function listProjectsByGlobs(args) {
|
|
65
65
|
const { patterns, cwd, bin } = args;
|
|
66
66
|
const directories = await glob(patterns.map(pattern => pattern.replace(/\/$/, '/')), { cwd });
|
|
67
|
-
|
|
68
|
-
|
|
67
|
+
logInfo(`Found ${directories.length} project folders matching "${patterns.join(', ')}" from configuration`);
|
|
68
|
+
logDebug(`Projects: ${directories.join(', ')}`);
|
|
69
69
|
return directories.toSorted().map(directory => ({
|
|
70
70
|
name: directory,
|
|
71
71
|
bin,
|
|
@@ -75,8 +75,8 @@ async function listProjectsByGlobs(args) {
|
|
|
75
75
|
async function listProjectsByNpmPackages(args) {
|
|
76
76
|
const { cwd, bin } = args;
|
|
77
77
|
const packages = await listPackages(cwd);
|
|
78
|
-
|
|
79
|
-
|
|
78
|
+
logInfo(`Found ${packages.length} NPM packages in repository`);
|
|
79
|
+
logDebug(`Projects: ${packages.map(({ name }) => name).join(', ')}`);
|
|
80
80
|
return packages.map(({ name, directory }) => ({
|
|
81
81
|
name,
|
|
82
82
|
bin,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-projects.js","sourceRoot":"","sources":["../../../../src/lib/monorepo/list-projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"list-projects.js","sourceRoot":"","sources":["../../../../src/lib/monorepo/list-projects.ts"],"names":[],"mappings":"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"}
|
package/src/lib/output-files.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { copyFile, mkdir } from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { DEFAULT_PERSIST_FILENAME } from '@code-pushup/models';
|
|
4
|
-
import {
|
|
4
|
+
import { objectFromEntries, objectToKeys } from '@code-pushup/utils';
|
|
5
|
+
import { logDebug } from './log.js';
|
|
5
6
|
const BASE_DIR = path.join('.code-pushup', '.ci');
|
|
6
7
|
export async function saveOutputFiles({ project, type, files, settings: { directory }, }) {
|
|
7
8
|
const baseDir = project ? path.join(BASE_DIR, project.name) : BASE_DIR;
|
|
@@ -22,7 +23,7 @@ export async function saveOutputFiles({ project, type, files, settings: { direct
|
|
|
22
23
|
const src = files[format];
|
|
23
24
|
const dest = outputs[format];
|
|
24
25
|
await copyFile(src, dest);
|
|
25
|
-
|
|
26
|
+
logDebug(`Copied ${type} report from ${src} to ${dest}`);
|
|
26
27
|
}));
|
|
27
28
|
return outputs;
|
|
28
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output-files.js","sourceRoot":"","sources":["../../../src/lib/output-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,wBAAwB,EAAe,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"output-files.js","sourceRoot":"","sources":["../../../src/lib/output-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,wBAAwB,EAAe,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAIpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;AAIlD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAiC,EACpE,OAAO,EACP,IAAI,EACJ,KAAK,EACL,QAAQ,EAAE,EAAE,SAAS,EAAE,GAMxB;IACC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACvE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,IAAI,GACR,IAAI,KAAK,YAAY;QACnB,CAAC,CAAC,GAAG,wBAAwB,OAAO;QACpC,CAAC,CAAC,wBAAwB,CAAC;IAE/B,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAa,CAAC;IAChD,MAAM,OAAO,GAAG,iBAAiB,CAC/B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACpB,MAAM;QACN,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;KACrD,CAAC,CACH,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,KAAK,EAAC,MAAM,EAAC,EAAE;QACzB,oEAAoE;QACpE,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1B,QAAQ,CAAC,UAAU,IAAI,gBAAgB,GAAG,OAAO,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,OAAY,CAAC;AACtB,CAAC"}
|
package/src/lib/run-monorepo.js
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
/* eslint-disable max-lines */
|
|
2
2
|
import { readFile } from 'node:fs/promises';
|
|
3
|
-
import { asyncSequential, hasNoNullableProps,
|
|
3
|
+
import { asyncSequential, hasNoNullableProps, } from '@code-pushup/utils';
|
|
4
4
|
import { createCommandContext, persistedFilesFromConfig, runCollect, runCompare, runMergeDiffs, } from './cli/index.js';
|
|
5
5
|
import { commentOnPR } from './comment.js';
|
|
6
|
+
import { logDebug, logInfo } from './log.js';
|
|
6
7
|
import { listMonorepoProjects, } from './monorepo/index.js';
|
|
7
8
|
import { saveOutputFiles } from './output-files.js';
|
|
8
9
|
import { checkPrintConfig, configFromPatterns, findNewIssues, hasDefaultPersistFormats, loadCachedBaseReport, prepareReportFilesToCompare, printPersistConfig, runInBaseBranch, runOnProject, saveDiffFiles, saveReportFiles, } from './run-utils.js';
|
|
9
10
|
export async function runInMonorepoMode(env) {
|
|
10
11
|
const { api, settings } = env;
|
|
11
|
-
|
|
12
|
+
logInfo('Running Code PushUp in monorepo mode');
|
|
12
13
|
const { projects, runManyCommand } = await listMonorepoProjects(settings);
|
|
13
14
|
const projectResults = runManyCommand
|
|
14
15
|
? await runProjectsInBulk(projects, runManyCommand, env)
|
|
@@ -20,7 +21,7 @@ export async function runInMonorepoMode(env) {
|
|
|
20
21
|
return { mode: 'monorepo', projects: projectResults };
|
|
21
22
|
}
|
|
22
23
|
const tmpDiffPath = await runMergeDiffs(diffJsonPaths, createCommandContext(settings, projects[0]));
|
|
23
|
-
|
|
24
|
+
logDebug(`Merged ${diffJsonPaths.length} diffs into ${tmpDiffPath}`);
|
|
24
25
|
const { md: diffPath } = await saveOutputFiles({
|
|
25
26
|
project: null,
|
|
26
27
|
type: 'comparison',
|
|
@@ -38,12 +39,12 @@ export async function runInMonorepoMode(env) {
|
|
|
38
39
|
};
|
|
39
40
|
}
|
|
40
41
|
function runProjectsIndividually(projects, env) {
|
|
41
|
-
|
|
42
|
+
logInfo(`Running on ${projects.length} projects individually`);
|
|
42
43
|
return asyncSequential(projects, project => runOnProject(project, env));
|
|
43
44
|
}
|
|
44
45
|
async function runProjectsInBulk(projects, runManyCommand, env) {
|
|
45
46
|
const { refs: { base }, settings, } = env;
|
|
46
|
-
|
|
47
|
+
logInfo(`Running on ${projects.length} projects in bulk (parallel: ${settings.parallel})`);
|
|
47
48
|
const { projectEnvs, hasFormats } = await loadProjectEnvs(projects, settings);
|
|
48
49
|
await collectMany(runManyCommand, env, { hasFormats });
|
|
49
50
|
const currProjectReports = await Promise.all(projectEnvs.map(async ({ project, config, ctx }) => {
|
|
@@ -74,7 +75,7 @@ async function loadProjectEnvs(projects, settings) {
|
|
|
74
75
|
return { project, config, ctx };
|
|
75
76
|
});
|
|
76
77
|
const hasFormats = allProjectsHaveDefaultPersistFormats(projectEnvs);
|
|
77
|
-
|
|
78
|
+
logDebug([
|
|
78
79
|
configPatterns
|
|
79
80
|
? `Parsed ${projectEnvs.length} persist and upload configs by interpolating configPatterns option for each project.`
|
|
80
81
|
: `Loaded ${projectEnvs.length} persist and upload configs by running print-config command for each project.`,
|
|
@@ -97,7 +98,7 @@ async function compareProjectsInBulk(currProjectReports, base, runManyCommand, e
|
|
|
97
98
|
return { ...args, config, currReport, prevReport };
|
|
98
99
|
}));
|
|
99
100
|
const uncachedProjectReports = projectReportsWithCache.filter(({ prevReport }) => !prevReport);
|
|
100
|
-
|
|
101
|
+
logInfo(`${currProjectReports.length - uncachedProjectReports.length} out of ${currProjectReports.length} projects loaded previous report from artifact cache`);
|
|
101
102
|
const collectedPrevReports = await collectPreviousReports(base, uncachedProjectReports, runManyCommand, env);
|
|
102
103
|
const projectsToCompare = projectReportsWithCache
|
|
103
104
|
.map(args => ({
|
|
@@ -157,12 +158,12 @@ async function collectPreviousReports(base, uncachedProjectReports, runManyComma
|
|
|
157
158
|
.map(({ project }) => project.name)
|
|
158
159
|
.filter(name => !onlyProjects.includes(name));
|
|
159
160
|
if (invalidProjects.length > 0) {
|
|
160
|
-
|
|
161
|
-
|
|
161
|
+
logDebug(`Printing config failed for ${invalidProjects.length} projects - ${invalidProjects.join(', ')}`);
|
|
162
|
+
logInfo(`Skipping ${invalidProjects.length} projects which aren't configured in base branch ${base.ref}`);
|
|
162
163
|
}
|
|
163
164
|
if (onlyProjects.length > 0) {
|
|
164
165
|
const hasFormats = allProjectsHaveDefaultPersistFormats(validProjectConfigs);
|
|
165
|
-
|
|
166
|
+
logInfo(`Collecting previous reports for ${onlyProjects.length} projects`);
|
|
166
167
|
await collectMany(runManyCommand, env, { hasFormats, onlyProjects });
|
|
167
168
|
}
|
|
168
169
|
const projectFiles = validProjectConfigs.map(args => savePreviousProjectReport({ ...args, settings }));
|
|
@@ -191,7 +192,7 @@ async function collectMany(runManyCommand, env, options) {
|
|
|
191
192
|
const countText = onlyProjects
|
|
192
193
|
? `${onlyProjects.length} previous`
|
|
193
194
|
: 'all current';
|
|
194
|
-
|
|
195
|
+
logDebug(`Collected ${countText} reports using command \`${command}\``);
|
|
195
196
|
}
|
|
196
197
|
async function compareMany(runManyCommand, env, options) {
|
|
197
198
|
const { settings } = env;
|
|
@@ -201,7 +202,7 @@ async function compareMany(runManyCommand, env, options) {
|
|
|
201
202
|
bin: await runManyCommand(),
|
|
202
203
|
};
|
|
203
204
|
await runCompare(ctx, { hasFormats });
|
|
204
|
-
|
|
205
|
+
logDebug('Compared all project reports');
|
|
205
206
|
}
|
|
206
207
|
export function allProjectsHaveDefaultPersistFormats(projects) {
|
|
207
208
|
return projects.every(({ config }) => hasDefaultPersistFormats(config));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-monorepo.js","sourceRoot":"","sources":["../../../src/lib/run-monorepo.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAEL,eAAe,EACf,kBAAkB,
|
|
1
|
+
{"version":3,"file":"run-monorepo.js","sourceRoot":"","sources":["../../../src/lib/run-monorepo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { logger } from '@code-pushup/utils';
|
|
2
1
|
import { commentOnPR } from './comment.js';
|
|
2
|
+
import { logInfo } from './log.js';
|
|
3
3
|
import { runOnProject } from './run-utils.js';
|
|
4
4
|
export async function runInStandaloneMode(env) {
|
|
5
5
|
const { api, settings } = env;
|
|
6
|
-
|
|
6
|
+
logInfo('Running Code PushUp in standalone project mode');
|
|
7
7
|
const { files, newIssues } = await runOnProject(null, env);
|
|
8
8
|
const commentMdPath = files.comparison?.md;
|
|
9
9
|
if (!settings.skipComment && commentMdPath) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-standalone.js","sourceRoot":"","sources":["../../../src/lib/run-standalone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"run-standalone.js","sourceRoot":"","sources":["../../../src/lib/run-standalone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,OAAO,EAAe,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE3D,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAW;IAEX,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;IAE9B,OAAO,CAAC,gDAAgD,CAAC,CAAC;IAE1D,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAE3D,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC;IAC3C,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,aAAa,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,aAAa,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClE,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,KAAK;YACL,SAAS;YACT,SAAS;SACV,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAClD,CAAC"}
|
package/src/lib/run-utils.js
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
import { readFile, writeFile } from 'node:fs/promises';
|
|
3
3
|
import path from 'node:path';
|
|
4
4
|
import { DEFAULT_PERSIST_FILENAME, DEFAULT_PERSIST_FORMAT, DEFAULT_PERSIST_OUTPUT_DIR, } from '@code-pushup/models';
|
|
5
|
-
import { createReportPath, interpolate,
|
|
5
|
+
import { createReportPath, interpolate, objectFromEntries, readJsonFile, removeUndefinedAndEmptyProps, stringifyError, } from '@code-pushup/utils';
|
|
6
6
|
import { createCommandContext, parsePersistConfig, persistedFilesFromConfig, runCollect, runCompare, runPrintConfig, } from './cli/index.js';
|
|
7
7
|
import { listChangedFiles, normalizeGitRef } from './git.js';
|
|
8
8
|
import { filterRelevantIssues } from './issues.js';
|
|
9
|
+
import { logDebug, logInfo, logWarning } from './log.js';
|
|
9
10
|
import { saveOutputFiles } from './output-files.js';
|
|
10
11
|
import { downloadFromPortal } from './portal/download.js';
|
|
11
12
|
import { DEFAULT_SETTINGS, MAX_SEARCH_COMMITS, MIN_SEARCH_COMMITS, } from './settings.js';
|
|
@@ -35,7 +36,7 @@ function sanitizeSearchCommits(searchCommits) {
|
|
|
35
36
|
(!Number.isInteger(searchCommits) ||
|
|
36
37
|
searchCommits < MIN_SEARCH_COMMITS ||
|
|
37
38
|
searchCommits > MAX_SEARCH_COMMITS)) {
|
|
38
|
-
|
|
39
|
+
logWarning(`The searchCommits option must be a boolean or an integer in range ${MIN_SEARCH_COMMITS} to ${MAX_SEARCH_COMMITS}, ignoring invalid value ${searchCommits}.`);
|
|
39
40
|
return undefined;
|
|
40
41
|
}
|
|
41
42
|
return searchCommits;
|
|
@@ -44,12 +45,12 @@ export async function runOnProject(project, env) {
|
|
|
44
45
|
const { refs: { head, base }, settings, } = env;
|
|
45
46
|
const ctx = createCommandContext(settings, project);
|
|
46
47
|
if (project) {
|
|
47
|
-
|
|
48
|
+
logInfo(`Running Code PushUp on monorepo project ${project.name}`);
|
|
48
49
|
}
|
|
49
50
|
const config = settings.configPatterns
|
|
50
51
|
? configFromPatterns(settings.configPatterns, project)
|
|
51
52
|
: await printPersistConfig(ctx);
|
|
52
|
-
|
|
53
|
+
logDebug(settings.configPatterns
|
|
53
54
|
? `Parsed persist and upload configs from configPatterns option - ${JSON.stringify(config)}`
|
|
54
55
|
: `Loaded persist and upload configs from print-config command - ${JSON.stringify(config)}`);
|
|
55
56
|
await runCollect(ctx, { hasFormats: hasDefaultPersistFormats(config) });
|
|
@@ -59,7 +60,7 @@ export async function runOnProject(project, env) {
|
|
|
59
60
|
files: persistedFilesFromConfig(config, ctx),
|
|
60
61
|
settings,
|
|
61
62
|
});
|
|
62
|
-
|
|
63
|
+
logDebug(`Collected current report at ${currReport.files.json}`);
|
|
63
64
|
const noDiffOutput = {
|
|
64
65
|
name: projectToName(project),
|
|
65
66
|
files: { current: currReport.files },
|
|
@@ -67,7 +68,7 @@ export async function runOnProject(project, env) {
|
|
|
67
68
|
if (base == null) {
|
|
68
69
|
return noDiffOutput;
|
|
69
70
|
}
|
|
70
|
-
|
|
71
|
+
logInfo(`PR/MR detected, preparing to compare base branch ${base.ref} to head ${head.ref}`);
|
|
71
72
|
const baseArgs = { project, env, base, config, ctx };
|
|
72
73
|
const prevReport = await collectPreviousReport(baseArgs);
|
|
73
74
|
if (!prevReport) {
|
|
@@ -81,7 +82,7 @@ export async function compareReports(args) {
|
|
|
81
82
|
const { settings } = env;
|
|
82
83
|
await prepareReportFilesToCompare(args);
|
|
83
84
|
await runCompare(ctx, { hasFormats: hasDefaultPersistFormats(config) });
|
|
84
|
-
|
|
85
|
+
logInfo('Compared reports and generated diff files');
|
|
85
86
|
const newIssues = settings.detectNewIssues
|
|
86
87
|
? await findNewIssues(args)
|
|
87
88
|
: undefined;
|
|
@@ -106,7 +107,7 @@ export async function prepareReportFilesToCompare(args) {
|
|
|
106
107
|
return { key, report, filePath };
|
|
107
108
|
});
|
|
108
109
|
await Promise.all(reportPaths.map(({ filePath, report }) => writeFile(filePath, JSON.stringify(report, null, 2))));
|
|
109
|
-
|
|
110
|
+
logDebug([
|
|
110
111
|
'Prepared',
|
|
111
112
|
project && `"${project.name}" project's`,
|
|
112
113
|
'report files for comparison',
|
|
@@ -166,7 +167,7 @@ export async function collectPreviousReport(args) {
|
|
|
166
167
|
files: persistedFilesFromConfig(config, ctx),
|
|
167
168
|
settings,
|
|
168
169
|
});
|
|
169
|
-
|
|
170
|
+
logDebug(`Collected previous report at ${report.files.json}`);
|
|
170
171
|
return report;
|
|
171
172
|
});
|
|
172
173
|
}
|
|
@@ -192,12 +193,12 @@ async function loadCachedBaseReportFromArtifacts(args) {
|
|
|
192
193
|
const reportPath = await api
|
|
193
194
|
.downloadReportArtifact(project?.name)
|
|
194
195
|
.catch((error) => {
|
|
195
|
-
|
|
196
|
+
logWarning(`Error when downloading previous report artifact, skipping - ${stringifyError(error)}`);
|
|
196
197
|
return null;
|
|
197
198
|
});
|
|
198
|
-
|
|
199
|
+
logInfo(`Previous report artifact ${reportPath ? 'found' : 'not found'}`);
|
|
199
200
|
if (reportPath) {
|
|
200
|
-
|
|
201
|
+
logDebug(`Previous report artifact downloaded to ${reportPath}`);
|
|
201
202
|
}
|
|
202
203
|
return reportPath;
|
|
203
204
|
}
|
|
@@ -221,12 +222,12 @@ async function loadCachedBaseReportFromPortal(args) {
|
|
|
221
222
|
}),
|
|
222
223
|
},
|
|
223
224
|
}).catch((error) => {
|
|
224
|
-
|
|
225
|
+
logWarning(`Error when downloading previous report from portal, skipping - ${stringifyError(error)}`);
|
|
225
226
|
return null;
|
|
226
227
|
});
|
|
227
|
-
|
|
228
|
+
logInfo(`Previous report ${reportPath ? 'found' : 'not found'} in Code PushUp portal`);
|
|
228
229
|
if (reportPath) {
|
|
229
|
-
|
|
230
|
+
logDebug(`Previous report downloaded from portal to ${reportPath}`);
|
|
230
231
|
}
|
|
231
232
|
return reportPath;
|
|
232
233
|
}
|
|
@@ -234,10 +235,10 @@ export async function runInBaseBranch(base, env, fn) {
|
|
|
234
235
|
const { git } = env;
|
|
235
236
|
await git.fetch('origin', base.ref, ['--depth=1']);
|
|
236
237
|
await git.checkout(['-f', base.sha]);
|
|
237
|
-
|
|
238
|
+
logInfo(`Switched to base branch ${base.ref}`);
|
|
238
239
|
const result = await fn();
|
|
239
240
|
await git.checkout(['-f', '-']);
|
|
240
|
-
|
|
241
|
+
logInfo('Switched back to PR/MR branch');
|
|
241
242
|
return result;
|
|
242
243
|
}
|
|
243
244
|
export async function checkPrintConfig(args) {
|
|
@@ -247,12 +248,12 @@ export async function checkPrintConfig(args) {
|
|
|
247
248
|
: 'Executing print-config';
|
|
248
249
|
try {
|
|
249
250
|
const config = await printPersistConfig(ctx);
|
|
250
|
-
|
|
251
|
+
logDebug(`${operation} verified code-pushup installed in base branch ${base.ref}`);
|
|
251
252
|
return config;
|
|
252
253
|
}
|
|
253
254
|
catch (error) {
|
|
254
|
-
|
|
255
|
-
|
|
255
|
+
logDebug(`Error from print-config - ${stringifyError(error)}`);
|
|
256
|
+
logInfo(`${operation} failed, assuming code-pushup not installed in base branch ${base.ref} and skipping comparison`);
|
|
256
257
|
return null;
|
|
257
258
|
}
|
|
258
259
|
}
|
|
@@ -303,7 +304,7 @@ export async function findNewIssues(args) {
|
|
|
303
304
|
reportsDiff: JSON.parse(reportsDiff),
|
|
304
305
|
changedFiles,
|
|
305
306
|
});
|
|
306
|
-
|
|
307
|
+
logDebug(`Found ${issues.length} relevant issues for ${Object.keys(changedFiles).length} changed files`);
|
|
307
308
|
return issues;
|
|
308
309
|
}
|
|
309
310
|
function projectToName(project) {
|
package/src/lib/run-utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-utils.js","sourceRoot":"","sources":["../../../src/lib/run-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run-utils.js","sourceRoot":"","sources":["../../../src/lib/run-utils.ts"],"names":[],"mappings":"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"}
|