From ebd514f490bfee9d50a494d05d60bb8c3187ac91 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Wed, 22 Oct 2025 17:11:19 +0100 Subject: [PATCH] Address review comments --- lib/analyze-action.js | 24 ++++++++++++++---------- src/analyze-action.ts | 28 ++++++++++++++++------------ 2 files changed, 30 insertions(+), 22 deletions(-) diff --git a/lib/analyze-action.js b/lib/analyze-action.js index 640075071..ebf4b507e 100644 --- a/lib/analyze-action.js +++ b/lib/analyze-action.js @@ -96411,14 +96411,18 @@ async function run() { ); } } - core14.setOutput( - "sarif-id", - uploadResults["code-scanning" /* CodeScanning */]?.sarifID - ); - core14.setOutput( - "quality-sarif-id", - uploadResults["code-quality" /* CodeQuality */]?.sarifID - ); + if (uploadResults["code-scanning" /* CodeScanning */] !== void 0) { + core14.setOutput( + "sarif-id", + uploadResults["code-scanning" /* CodeScanning */].sarifID + ); + } + if (uploadResults["code-quality" /* CodeQuality */] !== void 0) { + core14.setOutput( + "quality-sarif-id", + uploadResults["code-quality" /* CodeQuality */].sarifID + ); + } } else { logger.info("Not uploading results"); } @@ -96445,7 +96449,7 @@ async function run() { } if (isInTestMode()) { logger.debug("In test mode. Waiting for processing is disabled."); - } else if (uploadResults !== void 0 && uploadResults["code-scanning" /* CodeScanning */] !== void 0 && getRequiredInput("wait-for-processing") === "true") { + } else if (uploadResults?.["code-scanning" /* CodeScanning */] !== void 0 && getRequiredInput("wait-for-processing") === "true") { await waitForProcessing( getRepositoryNwo(), uploadResults["code-scanning" /* CodeScanning */].sarifID, @@ -96477,7 +96481,7 @@ async function run() { ); return; } - if (runStats !== void 0 && uploadResults !== void 0 && uploadResults["code-scanning" /* CodeScanning */] !== void 0) { + if (runStats !== void 0 && uploadResults?.["code-scanning" /* CodeScanning */] !== void 0) { await sendStatusReport2( startedAt, config, diff --git a/src/analyze-action.ts b/src/analyze-action.ts index 8c019ea3d..b6aa05ebe 100644 --- a/src/analyze-action.ts +++ b/src/analyze-action.ts @@ -385,14 +385,20 @@ async function run() { } } - core.setOutput( - "sarif-id", - uploadResults[analyses.AnalysisKind.CodeScanning]?.sarifID, - ); - core.setOutput( - "quality-sarif-id", - uploadResults[analyses.AnalysisKind.CodeQuality]?.sarifID, - ); + // Set the SARIF id outputs only if we have results for them, to avoid + // having keys with empty values in the action output. + if (uploadResults[analyses.AnalysisKind.CodeScanning] !== undefined) { + core.setOutput( + "sarif-id", + uploadResults[analyses.AnalysisKind.CodeScanning].sarifID, + ); + } + if (uploadResults[analyses.AnalysisKind.CodeQuality] !== undefined) { + core.setOutput( + "quality-sarif-id", + uploadResults[analyses.AnalysisKind.CodeQuality].sarifID, + ); + } } else { logger.info("Not uploading results"); } @@ -434,8 +440,7 @@ async function run() { if (util.isInTestMode()) { logger.debug("In test mode. Waiting for processing is disabled."); } else if ( - uploadResults !== undefined && - uploadResults[analyses.AnalysisKind.CodeScanning] !== undefined && + uploadResults?.[analyses.AnalysisKind.CodeScanning] !== undefined && actionsUtil.getRequiredInput("wait-for-processing") === "true" ) { await uploadLib.waitForProcessing( @@ -479,8 +484,7 @@ async function run() { if ( runStats !== undefined && - uploadResults !== undefined && - uploadResults[analyses.AnalysisKind.CodeScanning] !== undefined + uploadResults?.[analyses.AnalysisKind.CodeScanning] !== undefined ) { await sendStatusReport( startedAt,