Make the CodeQL instance a required parameter of uploadFiles

All the places that still call `uploadFiles` instead of `uploadSpecifiedFiles` are guaranteed to already have one.
This commit is contained in:
Michael B. Gale
2025-08-06 15:51:56 +01:00
parent 55b6208ff8
commit dca95cdb78
12 changed files with 16 additions and 11 deletions
+2 -2
View File
@@ -229,10 +229,10 @@ async function run() {
core.setOutput("sarif-output", path_1.default.resolve(outputDir));
const uploadInput = actionsUtil.getOptionalInput("upload");
if (runStats && actionsUtil.getUploadValue(uploadInput) === "always") {
uploadResult = await uploadLib.uploadFiles(outputDir, actionsUtil.getRequiredInput("checkout_path"), actionsUtil.getOptionalInput("category"), features, logger, uploadLib.CodeScanningTarget);
uploadResult = await uploadLib.uploadFiles(codeql, outputDir, actionsUtil.getRequiredInput("checkout_path"), actionsUtil.getOptionalInput("category"), features, logger, uploadLib.CodeScanningTarget);
core.setOutput("sarif-id", uploadResult.sarifID);
if (config.augmentationProperties.qualityQueriesInput !== undefined) {
const qualityUploadResult = await uploadLib.uploadFiles(outputDir, actionsUtil.getRequiredInput("checkout_path"), actionsUtil.fixCodeQualityCategory(logger, actionsUtil.getOptionalInput("category")), features, logger, uploadLib.CodeQualityTarget);
const qualityUploadResult = await uploadLib.uploadFiles(codeql, outputDir, actionsUtil.getRequiredInput("checkout_path"), actionsUtil.fixCodeQualityCategory(logger, actionsUtil.getOptionalInput("category")), features, logger, uploadLib.CodeQualityTarget);
core.setOutput("quality-sarif-id", qualityUploadResult.sarifID);
}
}
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -87,7 +87,7 @@ async function maybeUploadFailedSarif(config, repositoryNwo, features, logger) {
await codeql.databaseExportDiagnostics(databasePath, sarifFile, category);
}
logger.info(`Uploading failed SARIF file ${sarifFile}`);
const uploadResult = await uploadLib.uploadFiles(sarifFile, checkoutPath, category, features, logger, uploadLib.CodeScanningTarget);
const uploadResult = await uploadLib.uploadFiles(codeql, sarifFile, checkoutPath, category, features, logger, uploadLib.CodeScanningTarget);
await uploadLib.waitForProcessing(repositoryNwo, uploadResult.sarifID, logger, { isUnsuccessfulExecution: true });
return uploadResult
? { ...uploadResult.statusReport, sarifID: uploadResult.sarifID }
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -348,7 +348,7 @@ async function testFailedSarifUpload(t, actionsWorkflow, { category, databaseExi
else {
t.true(diagnosticsExportStub.calledOnceWith(sinon.match.string, category, config), `Actual args were: ${JSON.stringify(diagnosticsExportStub.args)}`);
}
t.true(uploadFiles.calledOnceWith(sinon.match.string, sinon.match.string, category, sinon.match.any, sinon.match.any), `Actual args were: ${JSON.stringify(uploadFiles.args)}`);
t.true(uploadFiles.calledOnceWith(sinon.match.any, sinon.match.string, sinon.match.string, category, sinon.match.any, sinon.match.any), `Actual args were: ${JSON.stringify(uploadFiles.args)}`);
t.true(waitForProcessing.calledOnceWith(sinon.match.any, "42", sinon.match.any, {
isUnsuccessfulExecution: true,
}));
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -453,9 +453,9 @@ exports.CodeQualityTarget = {
* Uploads a single SARIF file or a directory of SARIF files depending on what `inputSarifPath` refers
* to.
*/
async function uploadFiles(inputSarifPath, checkoutPath, category, features, logger, uploadTarget) {
async function uploadFiles(codeQL, inputSarifPath, checkoutPath, category, features, logger, uploadTarget) {
const sarifPaths = getSarifFilePaths(inputSarifPath, uploadTarget.sarifPredicate);
return uploadSpecifiedFiles(undefined, sarifPaths, checkoutPath, category, features, logger, uploadTarget);
return uploadSpecifiedFiles(codeQL, sarifPaths, checkoutPath, category, features, logger, uploadTarget);
}
/**
* Uploads the given array of SARIF files.
File diff suppressed because one or more lines are too long
+2
View File
@@ -344,6 +344,7 @@ async function run() {
const uploadInput = actionsUtil.getOptionalInput("upload");
if (runStats && actionsUtil.getUploadValue(uploadInput) === "always") {
uploadResult = await uploadLib.uploadFiles(
codeql,
outputDir,
actionsUtil.getRequiredInput("checkout_path"),
actionsUtil.getOptionalInput("category"),
@@ -355,6 +356,7 @@ async function run() {
if (config.augmentationProperties.qualityQueriesInput !== undefined) {
const qualityUploadResult = await uploadLib.uploadFiles(
codeql,
outputDir,
actionsUtil.getRequiredInput("checkout_path"),
actionsUtil.fixCodeQualityCategory(
+1
View File
@@ -407,6 +407,7 @@ async function testFailedSarifUpload(
}
t.true(
uploadFiles.calledOnceWith(
sinon.match.any,
sinon.match.string,
sinon.match.string,
category,
+1
View File
@@ -99,6 +99,7 @@ async function maybeUploadFailedSarif(
logger.info(`Uploading failed SARIF file ${sarifFile}`);
const uploadResult = await uploadLib.uploadFiles(
codeql,
sarifFile,
checkoutPath,
category,
+2 -1
View File
@@ -645,6 +645,7 @@ export const CodeQualityTarget: UploadTarget = {
* to.
*/
export async function uploadFiles(
codeQL: CodeQL,
inputSarifPath: string,
checkoutPath: string,
category: string | undefined,
@@ -658,7 +659,7 @@ export async function uploadFiles(
);
return uploadSpecifiedFiles(
undefined,
codeQL,
sarifPaths,
checkoutPath,
category,