diff --git a/lib/analyze-action.js b/lib/analyze-action.js index c7fa77f57..65a522dfe 100644 --- a/lib/analyze-action.js +++ b/lib/analyze-action.js @@ -93615,10 +93615,12 @@ async function runQueries(sarifFolder, memoryFlag, addSnippetsFlag, threadsFlag, addSarifExtension(dbAnalysisConfig, language) ); const queries = []; - if (isCodeQualityEnabled(config) && isCodeScanningEnabled(config)) { + if (config.analysisKinds.length > 1) { queries.push(getGeneratedSuitePath(config, language)); - for (const qualityQuery of codeQualityQueries) { - queries.push(resolveQuerySuiteAlias(language, qualityQuery)); + if (isCodeQualityEnabled(config)) { + for (const qualityQuery of codeQualityQueries) { + queries.push(resolveQuerySuiteAlias(language, qualityQuery)); + } } } logger.startGroup(`Running queries for ${language}`); diff --git a/src/analyze.ts b/src/analyze.ts index f4ebdffa9..31c809e72 100644 --- a/src/analyze.ts +++ b/src/analyze.ts @@ -675,18 +675,17 @@ export async function runQueries( // the database was initialised. const queries: string[] = []; - // If both Code Scanning and Code Quality analyses are enabled, the database - // is initialised for Code Scanning. To avoid duplicate work, we want to run - // queries for both analyses at the same time. To do this, we invoke `run-queries` - // once with the generated query suite for Code Scanning + the fixed - // query suite for Code Quality. - if ( - configUtils.isCodeQualityEnabled(config) && - configUtils.isCodeScanningEnabled(config) - ) { + // If multiple analysis kinds are enabled, the database is initialised for Code Scanning. + // To avoid duplicate work, we want to run queries for all analyses at the same time. + // To do this, we invoke `run-queries` once with the generated query suite that was created + // when the database was initialised + the queries for other analysis kinds. + if (config.analysisKinds.length > 1) { queries.push(util.getGeneratedSuitePath(config, language)); - for (const qualityQuery of analyses.codeQualityQueries) { - queries.push(resolveQuerySuiteAlias(language, qualityQuery)); + + if (configUtils.isCodeQualityEnabled(config)) { + for (const qualityQuery of analyses.codeQualityQueries) { + queries.push(resolveQuerySuiteAlias(language, qualityQuery)); + } } }