From 6504a72ad7548624af097942be4db91bf968af87 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Wed, 23 Jul 2025 14:13:23 -0700 Subject: [PATCH 01/14] Update CODEQL_OVERLAY_MINIMUM_VERSION --- src/config-utils.test.ts | 7 +++++-- src/overlay-database-utils.ts | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/config-utils.test.ts b/src/config-utils.test.ts index 9b3bd73fd7..815c7b893d 100644 --- a/src/config-utils.test.ts +++ b/src/config-utils.test.ts @@ -15,7 +15,10 @@ import { Feature } from "./feature-flags"; import * as gitUtils from "./git-utils"; import { KnownLanguage, Language } from "./languages"; import { getRunnerLogger } from "./logging"; -import { OverlayDatabaseMode } from "./overlay-database-utils"; +import { + CODEQL_OVERLAY_MINIMUM_VERSION, + OverlayDatabaseMode, +} from "./overlay-database-utils"; import { parseRepositoryNwo } from "./repository"; import { setupTests, @@ -1269,7 +1272,7 @@ const defaultOverlayDatabaseModeTestSetup: OverlayDatabaseModeTestSetup = { repositoryOwner: "github", buildMode: BuildMode.None, languages: [KnownLanguage.javascript], - codeqlVersion: "2.21.0", + codeqlVersion: CODEQL_OVERLAY_MINIMUM_VERSION, gitRoot: "/some/git/root", codeScanningConfig: {}, }; diff --git a/src/overlay-database-utils.ts b/src/overlay-database-utils.ts index 864edba4f4..c73fe3f581 100644 --- a/src/overlay-database-utils.ts +++ b/src/overlay-database-utils.ts @@ -16,7 +16,7 @@ export enum OverlayDatabaseMode { None = "none", } -export const CODEQL_OVERLAY_MINIMUM_VERSION = "2.20.5"; +export const CODEQL_OVERLAY_MINIMUM_VERSION = "2.22.3"; /** * Writes a JSON file containing Git OIDs for all tracked files (represented From da8dabf356cc2b0cca1592b5a508110539f8c29f Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Mon, 21 Jul 2025 13:16:07 -0700 Subject: [PATCH 02/14] VersionInfo: add overlayVersion field --- src/codeql.ts | 9 +++++++++ src/testing-utils.ts | 5 ++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/codeql.ts b/src/codeql.ts index 422f41c80b..594b58eb2c 100644 --- a/src/codeql.ts +++ b/src/codeql.ts @@ -226,6 +226,15 @@ export interface CodeQL { export interface VersionInfo { version: string; features?: { [name: string]: boolean }; + /** + * The overlay version helps deal with backward incompatible changes for + * overlay analysis. When a precompiled query pack reports the same overlay + * version as the CodeQL CLI, we can use the CodeQL CLI to perform overlay + * analysis with that pack. Otherwise, if the overlay versions are different, + * or if either the pack or the CLI does not report an overlay version, + * we need to revert to non-overlay analysis. + */ + overlayVersion?: number; } export interface ResolveLanguagesOutput { diff --git a/src/testing-utils.ts b/src/testing-utils.ts index 11df50dc63..d7d486bd51 100644 --- a/src/testing-utils.ts +++ b/src/testing-utils.ts @@ -254,18 +254,21 @@ export function mockLanguagesInRepo(languages: string[]) { export const makeVersionInfo = ( version: string, features?: { [name: string]: boolean }, + overlayVersion?: number, ): codeql.VersionInfo => ({ version, features, + overlayVersion, }); export function mockCodeQLVersion( version: string, features?: { [name: string]: boolean }, + overlayVersion?: number, ) { return codeql.createStubCodeQL({ async getVersion() { - return makeVersionInfo(version, features); + return makeVersionInfo(version, features, overlayVersion); }, }); } From a71ebf32eab7a3d941208bcb8d9ca81a4026ab82 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Wed, 23 Jul 2025 10:20:17 -0700 Subject: [PATCH 03/14] Remove resolveQueries() --- src/codeql.ts | 44 ------------------------ src/config-utils.test.ts | 73 ---------------------------------------- 2 files changed, 117 deletions(-) diff --git a/src/codeql.ts b/src/codeql.ts index 594b58eb2c..e34466e6f5 100644 --- a/src/codeql.ts +++ b/src/codeql.ts @@ -128,13 +128,6 @@ export interface CodeQL { * Run 'codeql resolve languages' with '--format=betterjson'. */ betterResolveLanguages(): Promise; - /** - * Run 'codeql resolve queries'. - */ - resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ): Promise; /** * Run 'codeql resolve build-environment' */ @@ -255,20 +248,6 @@ export interface BetterResolveLanguagesOutput { }; } -export interface ResolveQueriesOutput { - byLanguage: { - [language: string]: { - [queryPath: string]: object; - }; - }; - noDeclaredLanguage: { - [queryPath: string]: object; - }; - multipleDeclaredLanguages: { - [queryPath: string]: object; - }; -} - export interface ResolveBuildEnvironmentOutput { configuration?: { [language: string]: { @@ -495,7 +474,6 @@ export function createStubCodeQL(partialCodeql: Partial): CodeQL { "betterResolveLanguages", async () => ({ aliases: {}, extractors: {} }), ), - resolveQueries: resolveFunction(partialCodeql, "resolveQueries"), resolveBuildEnvironment: resolveFunction( partialCodeql, "resolveBuildEnvironment", @@ -792,28 +770,6 @@ export async function getCodeQLForCmd( ); } }, - async resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ) { - const codeqlArgs = [ - "resolve", - "queries", - ...queries, - "--format=bylanguage", - ...getExtraOptionsFromEnv(["resolve", "queries"]), - ]; - if (extraSearchPath !== undefined) { - codeqlArgs.push("--additional-packs", extraSearchPath); - } - const output = await runCli(cmd, codeqlArgs); - - try { - return JSON.parse(output) as ResolveQueriesOutput; - } catch (e) { - throw new Error(`Unexpected output from codeql resolve queries: ${e}`); - } - }, async resolveBuildEnvironment( workingDir: string | undefined, language: string, diff --git a/src/config-utils.test.ts b/src/config-utils.test.ts index 815c7b893d..cd47fac05b 100644 --- a/src/config-utils.test.ts +++ b/src/config-utils.test.ts @@ -143,16 +143,6 @@ test("load empty config", async (t) => { }, }; }, - async resolveQueries() { - return { - byLanguage: { - javascript: { queries: ["query1.ql"] }, - python: { queries: ["query2.ql"] }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, async packDownload(): Promise { return { packs: [] }; }, @@ -195,16 +185,6 @@ test("loading config saves config", async (t) => { }, }; }, - async resolveQueries() { - return { - byLanguage: { - javascript: { queries: ["query1.ql"] }, - python: { queries: ["query2.ql"] }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, async packDownload(): Promise { return { packs: [] }; }, @@ -330,18 +310,6 @@ test("load non-empty input", async (t) => { }, }; }, - async resolveQueries() { - return { - byLanguage: { - javascript: { - "/foo/a.ql": {}, - "/bar/b.ql": {}, - }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, async packDownload(): Promise { return { packs: [] }; }, @@ -406,25 +374,6 @@ test("load non-empty input", async (t) => { }); }); -/** - * Returns the provided queries, just in the right format for a resolved query - * This way we can test by seeing which returned items are in the final - * configuration. - */ -function queriesToResolvedQueryForm(queries: string[]) { - const dummyResolvedQueries = {}; - for (const q of queries) { - dummyResolvedQueries[q] = {}; - } - return { - byLanguage: { - javascript: dummyResolvedQueries, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; -} - test("Using config input and file together, config input should be used.", async (t) => { return await withTmpDir(async (tempDir) => { process.env["RUNNER_TEMP"] = tempDir; @@ -449,10 +398,6 @@ test("Using config input and file together, config input should be used.", async fs.mkdirSync(path.join(tempDir, "foo")); - const resolveQueriesArgs: Array<{ - queries: string[]; - extraSearchPath: string | undefined; - }> = []; const codeql = createStubCodeQL({ async betterResolveLanguages() { return { @@ -462,13 +407,6 @@ test("Using config input and file together, config input should be used.", async }, }; }, - async resolveQueries( - queries: string[], - extraSearchPath: string | undefined, - ) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, async packDownload(): Promise { return { packs: [] }; }, @@ -502,17 +440,6 @@ test("API client used when reading remote config", async (t) => { }, }; }, - async resolveQueries() { - return { - byLanguage: { - javascript: { - "foo.ql": {}, - }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, async packDownload(): Promise { return { packs: [] }; }, From ad19982a1fbd642f9c42ea157954db435f128571 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Wed, 23 Jul 2025 10:40:15 -0700 Subject: [PATCH 04/14] Remove packDownload() --- src/analyze.test.ts | 1 - src/codeql.ts | 73 ---------------------------------------- src/config-utils.test.ts | 20 +---------- 3 files changed, 1 insertion(+), 93 deletions(-) diff --git a/src/analyze.test.ts b/src/analyze.test.ts index f55bdf67ca..e957b73843 100644 --- a/src/analyze.test.ts +++ b/src/analyze.test.ts @@ -44,7 +44,6 @@ test("status report fields", async (t) => { for (const language of Object.values(KnownLanguage)) { const codeql = createStubCodeQL({ databaseRunQueries: async () => {}, - packDownload: async () => ({ packs: [] }), databaseInterpretResults: async ( _db: string, _queriesRun: string[], diff --git a/src/codeql.ts b/src/codeql.ts index e34466e6f5..bd2400d3b2 100644 --- a/src/codeql.ts +++ b/src/codeql.ts @@ -136,14 +136,6 @@ export interface CodeQL { language: string, ): Promise; - /** - * Run 'codeql pack download'. - */ - packDownload( - packs: string[], - qlconfigFile: string | undefined, - ): Promise; - /** * Clean up all the databases within a database cluster. */ @@ -256,17 +248,6 @@ export interface ResolveBuildEnvironmentOutput { }; } -export interface PackDownloadOutput { - packs: PackDownloadItem[]; -} - -interface PackDownloadItem { - name: string; - version: string; - packDir: string; - installResult: string; -} - /** * Stores the CodeQL object, and is populated by `setupCodeQL` or `getCodeQL`. */ @@ -478,7 +459,6 @@ export function createStubCodeQL(partialCodeql: Partial): CodeQL { partialCodeql, "resolveBuildEnvironment", ), - packDownload: resolveFunction(partialCodeql, "packDownload"), databaseCleanupCluster: resolveFunction( partialCodeql, "databaseCleanupCluster", @@ -888,59 +868,6 @@ export async function getCodeQLForCmd( ]; return await runCli(cmd, codeqlArgs); }, - - /** - * Download specified packs into the package cache. If the specified - * package and version already exists (e.g., from a previous analysis run), - * then it is not downloaded again (unless the extra option `--force` is - * specified). - * - * If no version is specified, then the latest version is - * downloaded. The check to determine what the latest version is is done - * each time this package is requested. - * - * Optionally, a `qlconfigFile` is included. If used, then this file - * is used to determine which registry each pack is downloaded from. - */ - async packDownload( - packs: string[], - qlconfigFile: string | undefined, - ): Promise { - const qlconfigArg = qlconfigFile - ? [`--qlconfig-file=${qlconfigFile}`] - : ([] as string[]); - - const codeqlArgs = [ - "pack", - "download", - ...qlconfigArg, - "--format=json", - "--resolve-query-specs", - ...getExtraOptionsFromEnv(["pack", "download"]), - ...packs, - ]; - - const output = await runCli(cmd, codeqlArgs); - - try { - const parsedOutput: PackDownloadOutput = JSON.parse(output); - if ( - Array.isArray(parsedOutput.packs) && - // TODO PackDownloadOutput will not include the version if it is not specified - // in the input. The version is always the latest version available. - // It should be added to the output, but this requires a CLI change - parsedOutput.packs.every((p) => p.name /* && p.version */) - ) { - return parsedOutput; - } else { - throw new Error("Unexpected output from pack download"); - } - } catch (e) { - throw new Error( - `Attempted to download specified packs but got an error:\n${output}\n${e}`, - ); - } - }, async databaseCleanupCluster( config: Config, cleanupLevel: string, diff --git a/src/config-utils.test.ts b/src/config-utils.test.ts index cd47fac05b..7f8df74efd 100644 --- a/src/config-utils.test.ts +++ b/src/config-utils.test.ts @@ -9,7 +9,7 @@ import * as sinon from "sinon"; import * as actionsUtil from "./actions-util"; import * as api from "./api-client"; import { CachingKind } from "./caching-utils"; -import { PackDownloadOutput, createStubCodeQL } from "./codeql"; +import { createStubCodeQL } from "./codeql"; import * as configUtils from "./config-utils"; import { Feature } from "./feature-flags"; import * as gitUtils from "./git-utils"; @@ -143,9 +143,6 @@ test("load empty config", async (t) => { }, }; }, - async packDownload(): Promise { - return { packs: [] }; - }, }); const config = await configUtils.initConfig( @@ -185,9 +182,6 @@ test("loading config saves config", async (t) => { }, }; }, - async packDownload(): Promise { - return { packs: [] }; - }, }); // Sanity check the saved config file does not already exist @@ -310,9 +304,6 @@ test("load non-empty input", async (t) => { }, }; }, - async packDownload(): Promise { - return { packs: [] }; - }, }); // Just create a generic config object with non-default values for all fields @@ -407,9 +398,6 @@ test("Using config input and file together, config input should be used.", async }, }; }, - async packDownload(): Promise { - return { packs: [] }; - }, }); // Only JS, python packs will be ignored @@ -440,9 +428,6 @@ test("API client used when reading remote config", async (t) => { }, }; }, - async packDownload(): Promise { - return { packs: [] }; - }, }); const inputFileContents = ` @@ -542,9 +527,6 @@ test("No detected languages", async (t) => { async resolveLanguages() { return {}; }, - async packDownload(): Promise { - return { packs: [] }; - }, }); try { From 9d202e0975e52bf22dd970001a3f27e9e09fed94 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Thu, 31 Jul 2025 09:27:48 -0700 Subject: [PATCH 05/14] Add resolveQueriesStartingPacks() --- src/codeql.ts | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/codeql.ts b/src/codeql.ts index bd2400d3b2..d312d50f8e 100644 --- a/src/codeql.ts +++ b/src/codeql.ts @@ -198,6 +198,10 @@ export interface CodeQL { ): Promise; /** Get the location of an extractor for the specified language. */ resolveExtractor(language: Language): Promise; + /** + * Run 'codeql resolve queries --format=startingpacks'. + */ + resolveQueriesStartingPacks(queries: string[]): Promise; /** * Run 'codeql github merge-results'. */ @@ -479,6 +483,10 @@ export function createStubCodeQL(partialCodeql: Partial): CodeQL { ), diagnosticsExport: resolveFunction(partialCodeql, "diagnosticsExport"), resolveExtractor: resolveFunction(partialCodeql, "resolveExtractor"), + resolveQueriesStartingPacks: resolveFunction( + partialCodeql, + "resolveQueriesStartingPacks", + ), mergeResults: resolveFunction(partialCodeql, "mergeResults"), }; } @@ -974,6 +982,24 @@ export async function getCodeQLForCmd( ).exec(); return JSON.parse(extractorPath) as string; }, + async resolveQueriesStartingPacks(queries: string[]): Promise { + const codeqlArgs = [ + "resolve", + "queries", + "--format=startingpacks", + ...getExtraOptionsFromEnv(["resolve", "queries"]), + ...queries, + ]; + const output = await runCli(cmd, codeqlArgs, { noStreamStdout: true }); + + try { + return JSON.parse(output) as string[]; + } catch (e) { + throw new Error( + `Unexpected output from codeql resolve queries --format=startingpacks: ${e}`, + ); + } + }, async mergeResults( sarifFiles: string[], outputFile: string, From c47e1541d875811c8c5810be17f44eef61f61932 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Wed, 6 Aug 2025 13:05:52 -0700 Subject: [PATCH 06/14] Add checkPacksForOverlayCompatibility() --- src/init.test.ts | 293 ++++++++++++++++++++++++++++++++++++++++++++++- src/init.ts | 121 +++++++++++++++++++ 2 files changed, 412 insertions(+), 2 deletions(-) diff --git a/src/init.test.ts b/src/init.test.ts index 89cd2ea7e9..03f456d115 100644 --- a/src/init.test.ts +++ b/src/init.test.ts @@ -1,9 +1,14 @@ import * as fs from "fs"; import path from "path"; -import test from "ava"; +import test, { ExecutionContext } from "ava"; -import { cleanupDatabaseClusterDirectory } from "./init"; +import { createStubCodeQL } from "./codeql"; +import { + checkPacksForOverlayCompatibility, + cleanupDatabaseClusterDirectory, +} from "./init"; +import { KnownLanguage } from "./languages"; import { LoggedMessage, createTestConfig, @@ -106,3 +111,287 @@ for (const { runnerEnv, ErrorConstructor, message } of [ }); }); } + +type PackInfo = { + language: KnownLanguage; + packinfoContents: string | undefined; + sourceOnlyPack?: boolean; +}; + +const testCheckPacksForOverlayCompatibility = test.macro({ + exec: async ( + t: ExecutionContext, + _title: string, + { + cliOverlayVersion, + languages, + packs, + expectedResult, + }: { + cliOverlayVersion: number | undefined; + languages: KnownLanguage[]; + packs: Record; + expectedResult: boolean; + }, + ) => { + await withTmpDir(async (tmpDir) => { + const packDirsByLanguage = new Map(); + + for (const [packName, packInfo] of Object.entries(packs)) { + const packPath = path.join(tmpDir, packName); + fs.mkdirSync(packPath, { recursive: true }); + if (packInfo.packinfoContents) { + fs.writeFileSync( + path.join(packPath, ".packinfo"), + packInfo.packinfoContents, + ); + } + fs.writeFileSync( + path.join(packPath, "qlpack.yml"), + packInfo.sourceOnlyPack + ? `name: ${packName}\nversion: 1.0.0\n` + : `name: ${packName}\nversion: 1.0.0\nbuildMetadata:\n sha: 123abc\n`, + ); + + if (!packDirsByLanguage.has(packInfo.language)) { + packDirsByLanguage.set(packInfo.language, []); + } + packDirsByLanguage.get(packInfo.language)!.push(packPath); + } + + const codeql = createStubCodeQL({ + getVersion: async () => ({ + version: "2.22.2", + overlayVersion: cliOverlayVersion, + }), + resolveQueriesStartingPacks: async (suitePaths: string[]) => { + for (const language of packDirsByLanguage.keys()) { + const suiteForLanguage = path.join( + language, + "temp", + "config-queries.qls", + ); + if (suitePaths[0].endsWith(suiteForLanguage)) { + return packDirsByLanguage.get(language) || []; + } + } + return []; + }, + }); + + const messages: LoggedMessage[] = []; + const result = await checkPacksForOverlayCompatibility( + codeql, + createTestConfig({ dbLocation: tmpDir, languages }), + getRecordingLogger(messages), + ); + t.is(result, expectedResult); + t.deepEqual( + messages.length, + expectedResult ? 0 : 1, + "Expected log messages", + ); + }); + }, + title: (_, title) => `checkPacksForOverlayCompatibility: ${title}`, +}); + +test( + testCheckPacksForOverlayCompatibility, + "returns false when CLI does not support overlay", + { + cliOverlayVersion: undefined, + languages: [KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: false, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns true when there are no query packs", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.java], + packs: {}, + expectedResult: true, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns true when query pack has not been compiled", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: undefined, + sourceOnlyPack: true, + }, + }, + expectedResult: true, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns true when query pack has expected overlay version", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: true, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns true when query packs for all languages to analyze are compatible", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.cpp, KnownLanguage.java], + packs: { + "codeql/cpp-queries": { + language: KnownLanguage.cpp, + packinfoContents: '{"overlayVersion":2}', + }, + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: true, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns true when query pack for a language not analyzed is incompatible", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.java], + packs: { + "codeql/cpp-queries": { + language: KnownLanguage.cpp, + packinfoContents: undefined, + }, + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: true, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns false when query pack for a language to analyze is incompatible", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.cpp, KnownLanguage.java], + packs: { + "codeql/cpp-queries": { + language: KnownLanguage.cpp, + packinfoContents: '{"overlayVersion":1}', + }, + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: false, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns false when query pack is missing .packinfo", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + "custom/queries": { + language: KnownLanguage.java, + packinfoContents: undefined, + }, + }, + expectedResult: false, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns false when query pack has different overlay version", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + "custom/queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":1}', + }, + }, + expectedResult: false, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns false when query pack is missing overlayVersion in .packinfo", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + "custom/queries": { + language: KnownLanguage.java, + packinfoContents: "{}", + }, + }, + expectedResult: false, + }, +); + +test( + testCheckPacksForOverlayCompatibility, + "returns false when .packinfo is not valid JSON", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + "custom/queries": { + language: KnownLanguage.java, + packinfoContents: "this_is_not_valid_json", + }, + }, + expectedResult: false, + }, +); diff --git a/src/init.ts b/src/init.ts index 90ad14532d..5c93b30da0 100644 --- a/src/init.ts +++ b/src/init.ts @@ -3,6 +3,7 @@ import * as path from "path"; import * as toolrunner from "@actions/exec/lib/toolrunner"; import * as io from "@actions/io"; +import * as yaml from "js-yaml"; import { getOptionalInput, isSelfHostedRunner } from "./actions-util"; import { GitHubApiCombinedDetails, GitHubApiDetails } from "./api-client"; @@ -104,6 +105,126 @@ export async function runInit( return await getCombinedTracerConfig(codeql, config); } +/** + * Check whether all query packs are compatible with the overlay analysis + * support in the CodeQL CLI. If the check fails, this function will log a + * warning and returns false. + * + * @param codeql A CodeQL instance. + * @param logger A logger. + * @returns `true` if all query packs are compatible with overlay analysis, + * `false` otherwise. + */ +export async function checkPacksForOverlayCompatibility( + codeql: CodeQL, + config: configUtils.Config, + logger: Logger, +): Promise { + const codeQlOverlayVersion = (await codeql.getVersion()).overlayVersion; + if (codeQlOverlayVersion === undefined) { + logger.warning("The CodeQL CLI does not support overlay analysis."); + return false; + } + + for (const language of config.languages) { + const suitePath = path.join( + config.dbLocation, + language, + "temp", + "config-queries.qls", + ); + const packDirs = await codeql.resolveQueriesStartingPacks([suitePath]); + if ( + packDirs.some( + (packDir) => + !checkPackForOverlayCompatibility( + packDir, + codeQlOverlayVersion, + logger, + ), + ) + ) { + return false; + } + } + + return true; +} + +/** Interface for `qlpack.yml` file contents. */ +interface QlPack { + buildMetadata?: string; +} + +/** + * Check a single pack for its overlay compatibility. If the check fails, this + * function will log a warning and returns false. + * + * @param packDir Path to the directory containing the pack. + * @param codeQlOverlayVersion The overlay version of the CodeQL CLI. + * @param logger A logger. + * @returns `true` if the pack is compatible with overlay analysis, `false` + * otherwise. + */ +function checkPackForOverlayCompatibility( + packDir: string, + codeQlOverlayVersion: number, + logger: Logger, +): boolean { + try { + const qlpackPath = path.join(packDir, "qlpack.yml"); + const qlpackContents = yaml.load( + fs.readFileSync(qlpackPath, "utf8"), + ) as QlPack; + if (!qlpackContents.buildMetadata) { + // This is a source-only pack, and overlay compatibility checks apply only + // to precompiled packs. + return true; + } + + const packInfoPath = path.join(packDir, ".packinfo"); + if (!fs.existsSync(packInfoPath)) { + logger.warning( + `The query pack at ${packDir} does not have a .packinfo file, ` + + "so it cannot support overlay analysis. Recompiling the query pack " + + "with the latest CodeQL CLI should solve this problem.", + ); + return false; + } + + const packInfoFileContents = JSON.parse( + fs.readFileSync(packInfoPath, "utf8"), + ); + const packOverlayVersion = packInfoFileContents.overlayVersion; + if (typeof packOverlayVersion !== "number") { + logger.warning( + `The .packinfo file for the query pack at ${packDir} ` + + "does not have the overlayVersion field, which indicates that " + + "the pack is not compatible with overlay analysis.", + ); + return false; + } + + if (packOverlayVersion !== codeQlOverlayVersion) { + logger.warning( + `The query pack at ${packDir} was compiled with ` + + `overlay version ${packOverlayVersion}, but the CodeQL CLI ` + + `supports overlay version ${codeQlOverlayVersion}. The ` + + "query pack needs to be recompiled to support overlay analysis.", + ); + return false; + } + } catch (e) { + logger.warning( + `Error while checking pack at ${packDir} ` + + `for overlay compatibility: ${util.getErrorMessage(e)}`, + ); + return false; + } + + return true; +} + /** * If we are running python 3.12+ on windows, we need to switch to python 3.11. * This check happens in a powershell script. From ed9d057cdeaad31e5396183ea207860d28b4dad9 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Thu, 24 Jul 2025 11:59:21 -0700 Subject: [PATCH 07/14] Extract runDatabaseInitCluster() --- src/init.ts | 36 +++++++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/src/init.ts b/src/init.ts index 5c93b30da0..e921db6f08 100644 --- a/src/init.ts +++ b/src/init.ts @@ -78,21 +78,40 @@ export async function runInit( apiDetails: GitHubApiCombinedDetails, logger: Logger, ): Promise { - fs.mkdirSync(config.dbLocation, { recursive: true }); - const { registriesAuthTokens, qlconfigFile } = await configUtils.generateRegistries( registriesInput, config.tempDir, logger, ); - await configUtils.wrapEnvironment( - { - GITHUB_TOKEN: apiDetails.auth, - CODEQL_REGISTRIES_AUTH: registriesAuthTokens, - }, + const databaseInitEnvironment = { + GITHUB_TOKEN: apiDetails.auth, + CODEQL_REGISTRIES_AUTH: registriesAuthTokens, + }; + await runDatabaseInitCluster( + databaseInitEnvironment, + codeql, + config, + sourceRoot, + processName, + qlconfigFile, + logger, + ); + return await getCombinedTracerConfig(codeql, config); +} - // Init a database cluster +export async function runDatabaseInitCluster( + databaseInitEnvironment: Record, + codeql: CodeQL, + config: configUtils.Config, + sourceRoot: string, + processName: string | undefined, + qlconfigFile: string | undefined, + logger: Logger, +): Promise { + fs.mkdirSync(config.dbLocation, { recursive: true }); + await configUtils.wrapEnvironment( + databaseInitEnvironment, async () => await codeql.databaseInitCluster( config, @@ -102,7 +121,6 @@ export async function runInit( logger, ), ); - return await getCombinedTracerConfig(codeql, config); } /** From ee7cacdb6b3276481de184ce22e7b39916b8ee03 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Thu, 24 Jul 2025 12:45:34 -0700 Subject: [PATCH 08/14] Inline runInit() This commit inlines runInit(), so that it is easier to repeat the runDatabaseInitCluster() call when needed. --- src/init-action.ts | 22 ++++++++++++++++++---- src/init.ts | 34 +--------------------------------- 2 files changed, 19 insertions(+), 37 deletions(-) diff --git a/src/init-action.ts b/src/init-action.ts index 068249d28b..ab37c3e7c5 100644 --- a/src/init-action.ts +++ b/src/init-action.ts @@ -38,7 +38,7 @@ import { cleanupDatabaseClusterDirectory, initCodeQL, initConfig, - runInit, + runDatabaseInitCluster, } from "./init"; import { KnownLanguage } from "./languages"; import { getActionsLogger, Logger } from "./logging"; @@ -59,6 +59,7 @@ import { import { ZstdAvailability } from "./tar"; import { ToolsDownloadStatusReport } from "./tools-download"; import { ToolsFeature } from "./tools-features"; +import { getCombinedTracerConfig } from "./tracer-config"; import { checkDiskUsage, checkForTimeout, @@ -744,15 +745,28 @@ async function run() { } } - const tracerConfig = await runInit( + const { registriesAuthTokens, qlconfigFile } = + await configUtils.generateRegistries( + getOptionalInput("registries"), + config.tempDir, + logger, + ); + const databaseInitEnvironment = { + GITHUB_TOKEN: apiDetails.auth, + CODEQL_REGISTRIES_AUTH: registriesAuthTokens, + }; + + await runDatabaseInitCluster( + databaseInitEnvironment, codeql, config, sourceRoot, "Runner.Worker.exe", - getOptionalInput("registries"), - apiDetails, + qlconfigFile, logger, ); + + const tracerConfig = await getCombinedTracerConfig(codeql, config); if (tracerConfig !== undefined) { for (const [key, value] of Object.entries(tracerConfig.env)) { core.exportVariable(key, value); diff --git a/src/init.ts b/src/init.ts index e921db6f08..3e6f6b6507 100644 --- a/src/init.ts +++ b/src/init.ts @@ -6,7 +6,7 @@ import * as io from "@actions/io"; import * as yaml from "js-yaml"; import { getOptionalInput, isSelfHostedRunner } from "./actions-util"; -import { GitHubApiCombinedDetails, GitHubApiDetails } from "./api-client"; +import { GitHubApiDetails } from "./api-client"; import { CodeQL, setupCodeQL } from "./codeql"; import * as configUtils from "./config-utils"; import { CodeQLDefaultVersionInfo, FeatureEnablement } from "./feature-flags"; @@ -15,7 +15,6 @@ import { Logger, withGroupAsync } from "./logging"; import { ToolsSource } from "./setup-codeql"; import { ZstdAvailability } from "./tar"; import { ToolsDownloadStatusReport } from "./tools-download"; -import { TracerConfig, getCombinedTracerConfig } from "./tracer-config"; import * as util from "./util"; export async function initCodeQL( @@ -69,37 +68,6 @@ export async function initConfig( }); } -export async function runInit( - codeql: CodeQL, - config: configUtils.Config, - sourceRoot: string, - processName: string | undefined, - registriesInput: string | undefined, - apiDetails: GitHubApiCombinedDetails, - logger: Logger, -): Promise { - const { registriesAuthTokens, qlconfigFile } = - await configUtils.generateRegistries( - registriesInput, - config.tempDir, - logger, - ); - const databaseInitEnvironment = { - GITHUB_TOKEN: apiDetails.auth, - CODEQL_REGISTRIES_AUTH: registriesAuthTokens, - }; - await runDatabaseInitCluster( - databaseInitEnvironment, - codeql, - config, - sourceRoot, - processName, - qlconfigFile, - logger, - ); - return await getCombinedTracerConfig(codeql, config); -} - export async function runDatabaseInitCluster( databaseInitEnvironment: Record, codeql: CodeQL, From bc9c32ed0b836e722ae7f9cf97571030010df65d Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Fri, 25 Jul 2025 14:14:21 -0700 Subject: [PATCH 09/14] init-action: check packs for overlay compatibility --- src/init-action.ts | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/init-action.ts b/src/init-action.ts index ab37c3e7c5..533f8eaef9 100644 --- a/src/init-action.ts +++ b/src/init-action.ts @@ -35,6 +35,7 @@ import { EnvVar } from "./environment"; import { Feature, featureConfig, Features } from "./feature-flags"; import { checkInstallPython311, + checkPacksForOverlayCompatibility, cleanupDatabaseClusterDirectory, initCodeQL, initConfig, @@ -766,6 +767,36 @@ async function run() { logger, ); + // To check custom query packs for compatibility with overlay analysis, we + // need to first initialize the database cluster, which downloads the + // user-specified custom query packs. But we also want to check custom query + // pack compatibility first, because database cluster initialization depends + // on the overlay database mode. The solution is to initialize the database + // cluster first, check custom query pack compatibility, and if we need to + // revert to `OverlayDatabaseMode.None`, re-initialize the database cluster + // with the new overlay database mode. + if ( + config.augmentationProperties.overlayDatabaseMode !== + OverlayDatabaseMode.None && + !(await checkPacksForOverlayCompatibility(codeql, config, logger)) + ) { + logger.info( + "Reverting overlay database mode to None due to incompatible packs.", + ); + config.augmentationProperties.overlayDatabaseMode = + OverlayDatabaseMode.None; + cleanupDatabaseClusterDirectory(config, logger); + await runDatabaseInitCluster( + databaseInitEnvironment, + codeql, + config, + sourceRoot, + "Runner.Worker.exe", + qlconfigFile, + logger, + ); + } + const tracerConfig = await getCombinedTracerConfig(codeql, config); if (tracerConfig !== undefined) { for (const [key, value] of Object.entries(tracerConfig.env)) { From ee698cb5ba8c704e01570fb27da99d0b7d60663f Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Mon, 28 Jul 2025 14:13:40 -0700 Subject: [PATCH 10/14] init-action: inhibit non-empty dbLocation warning when restarting --- src/init-action.ts | 4 +++- src/init.test.ts | 28 ++++++++++++++++++++++++++++ src/init.ts | 9 ++++++--- 3 files changed, 37 insertions(+), 4 deletions(-) diff --git a/src/init-action.ts b/src/init-action.ts index 533f8eaef9..11e8514919 100644 --- a/src/init-action.ts +++ b/src/init-action.ts @@ -785,7 +785,9 @@ async function run() { ); config.augmentationProperties.overlayDatabaseMode = OverlayDatabaseMode.None; - cleanupDatabaseClusterDirectory(config, logger); + cleanupDatabaseClusterDirectory(config, logger, { + disableExistingDirectoryWarning: true, + }); await runDatabaseInitCluster( databaseInitEnvironment, codeql, diff --git a/src/init.test.ts b/src/init.test.ts index 03f456d115..740435f6a3 100644 --- a/src/init.test.ts +++ b/src/init.test.ts @@ -92,6 +92,7 @@ for (const { runnerEnv, ErrorConstructor, message } of [ cleanupDatabaseClusterDirectory( createTestConfig({ dbLocation }), getRecordingLogger(messages), + {}, () => { throw new Error(rmSyncError); }, @@ -112,6 +113,33 @@ for (const { runnerEnv, ErrorConstructor, message } of [ }); } +test("cleanupDatabaseClusterDirectory can disable warning with options", async (t) => { + await withTmpDir(async (tmpDir: string) => { + const dbLocation = path.resolve(tmpDir, "dbs"); + fs.mkdirSync(dbLocation, { recursive: true }); + + const fileToCleanUp = path.resolve(dbLocation, "something-to-cleanup.txt"); + fs.writeFileSync(fileToCleanUp, ""); + + const messages: LoggedMessage[] = []; + cleanupDatabaseClusterDirectory( + createTestConfig({ dbLocation }), + getRecordingLogger(messages), + { disableExistingDirectoryWarning: true }, + ); + + // Should only have the info message, not the warning + t.is(messages.length, 1); + t.is(messages[0].type, "info"); + t.is( + messages[0].message, + `Cleaned up database cluster directory ${dbLocation}.`, + ); + + t.false(fs.existsSync(fileToCleanUp)); + }); +}); + type PackInfo = { language: KnownLanguage; packinfoContents: string | undefined; diff --git a/src/init.ts b/src/init.ts index 3e6f6b6507..a62929b927 100644 --- a/src/init.ts +++ b/src/init.ts @@ -238,6 +238,7 @@ export async function checkInstallPython311( export function cleanupDatabaseClusterDirectory( config: configUtils.Config, logger: Logger, + options: { disableExistingDirectoryWarning?: boolean } = {}, // We can't stub the fs module in tests, so we allow the caller to override the rmSync function // for testing. rmSync = fs.rmSync, @@ -247,9 +248,11 @@ export function cleanupDatabaseClusterDirectory( (fs.statSync(config.dbLocation).isFile() || fs.readdirSync(config.dbLocation).length > 0) ) { - logger.warning( - `The database cluster directory ${config.dbLocation} must be empty. Attempting to clean it up.`, - ); + if (!options.disableExistingDirectoryWarning) { + logger.warning( + `The database cluster directory ${config.dbLocation} must be empty. Attempting to clean it up.`, + ); + } try { rmSync(config.dbLocation, { force: true, From 8dbcef50dfa8776f1a410e95a2b3e3a5e66eaa9e Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Tue, 5 Aug 2025 13:34:32 -0700 Subject: [PATCH 11/14] Extract getGeneratedSuitePath() --- src/analyze.ts | 9 +-------- src/init.ts | 7 +------ src/util.ts | 12 ++++++++++++ 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/analyze.ts b/src/analyze.ts index 7db5c70b99..b66620f1b7 100644 --- a/src/analyze.ts +++ b/src/analyze.ts @@ -663,14 +663,7 @@ export async function runQueries( const queries: string[] = []; if (config.augmentationProperties.qualityQueriesInput !== undefined) { - queries.push( - path.join( - util.getCodeQLDatabasePath(config, language), - "temp", - "config-queries.qls", - ), - ); - + queries.push(util.getGeneratedSuitePath(config, language)); for (const qualityQuery of config.augmentationProperties .qualityQueriesInput) { queries.push(resolveQuerySuiteAlias(language, qualityQuery.uses)); diff --git a/src/init.ts b/src/init.ts index a62929b927..444547f5c4 100644 --- a/src/init.ts +++ b/src/init.ts @@ -113,12 +113,7 @@ export async function checkPacksForOverlayCompatibility( } for (const language of config.languages) { - const suitePath = path.join( - config.dbLocation, - language, - "temp", - "config-queries.qls", - ); + const suitePath = util.getGeneratedSuitePath(config, language); const packDirs = await codeql.resolveQueriesStartingPacks([suitePath]); if ( packDirs.some( diff --git a/src/util.ts b/src/util.ts index 445fe3849c..1467cc9c2f 100644 --- a/src/util.ts +++ b/src/util.ts @@ -513,6 +513,18 @@ export function getCodeQLDatabasePath(config: Config, language: Language) { return path.resolve(config.dbLocation, language); } +/** + * Get the path where the generated query suite for the given language lives. + */ +export function getGeneratedSuitePath(config: Config, language: Language) { + return path.resolve( + config.dbLocation, + language, + "temp", + "config-queries.qls", + ); +} + /** * Parses user input of a github.com or GHES URL to a canonical form. * Removes any API prefix or suffix if one is present. From 57f4ac5c1bea91734647f5376113c28e3a9f9926 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Fri, 8 Aug 2025 09:37:45 -0700 Subject: [PATCH 12/14] PR checks: add overlay-init-fallback.yml --- .github/workflows/__overlay-init-fallback.yml | 69 +++++++++++++++++++ pr-checks/checks/overlay-init-fallback.yml | 23 +++++++ 2 files changed, 92 insertions(+) create mode 100644 .github/workflows/__overlay-init-fallback.yml create mode 100644 pr-checks/checks/overlay-init-fallback.yml diff --git a/.github/workflows/__overlay-init-fallback.yml b/.github/workflows/__overlay-init-fallback.yml new file mode 100644 index 0000000000..c9354ff963 --- /dev/null +++ b/.github/workflows/__overlay-init-fallback.yml @@ -0,0 +1,69 @@ +# Warning: This file is generated automatically, and should not be modified. +# Instead, please modify the template in the pr-checks directory and run: +# (cd pr-checks; pip install ruamel.yaml@0.17.31 && python3 sync.py) +# to regenerate this file. + +name: PR Check - Overlay database init fallback +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GO111MODULE: auto +on: + push: + branches: + - main + - releases/v* + pull_request: + types: + - opened + - synchronize + - reopened + - ready_for_review + schedule: + - cron: '0 5 * * *' + workflow_dispatch: {} +jobs: + overlay-init-fallback: + strategy: + fail-fast: false + matrix: + include: + - os: ubuntu-latest + version: linked + - os: ubuntu-latest + version: nightly-latest + name: Overlay database init fallback + permissions: + contents: read + security-events: read + timeout-minutes: 45 + runs-on: ${{ matrix.os }} + steps: + - name: Check out repository + uses: actions/checkout@v4 + - name: Prepare test + id: prepare-test + uses: ./.github/actions/prepare-test + with: + version: ${{ matrix.version }} + use-all-platform-bundle: 'false' + setup-kotlin: 'true' + - uses: ./../action/init + with: + languages: actions # Any language without overlay support will do + tools: ${{ steps.prepare-test.outputs.tools-url }} + env: + CODEQL_OVERLAY_DATABASE_MODE: overlay-base + - uses: ./../action/analyze + id: analysis + with: + upload-database: false + - name: Check database + shell: bash + run: | + cd "$RUNNER_TEMP/codeql_databases/actions" + if ! grep -q 'overlayBaseDatabase: false' codeql-database.yml ; then + echo "This test needs to be updated to use a non-overlay language." + exit 1 + fi + env: + CODEQL_ACTION_TEST_MODE: true diff --git a/pr-checks/checks/overlay-init-fallback.yml b/pr-checks/checks/overlay-init-fallback.yml new file mode 100644 index 0000000000..c8720859a3 --- /dev/null +++ b/pr-checks/checks/overlay-init-fallback.yml @@ -0,0 +1,23 @@ +name: "Overlay database init fallback" +description: "Tests that overlay init action succeeds with non-overlay packs" +versions: ["linked", "nightly-latest"] +operatingSystems: ["ubuntu"] +steps: + - uses: ./../action/init + with: + languages: actions # Any language without overlay support will do + tools: ${{ steps.prepare-test.outputs.tools-url }} + env: + CODEQL_OVERLAY_DATABASE_MODE: overlay-base + - uses: ./../action/analyze + id: analysis + with: + upload-database: false + - name: Check database + shell: bash + run: | + cd "$RUNNER_TEMP/codeql_databases/actions" + if ! grep -q 'overlayBaseDatabase: false' codeql-database.yml ; then + echo "This test needs to be updated to use a non-overlay language." + exit 1 + fi From baac9295dcfb83317aff5edbf823a061d27350c0 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Fri, 8 Aug 2025 10:34:36 -0700 Subject: [PATCH 13/14] Check both qlpack.yml and codeql-pack.yml --- src/init.test.ts | 21 ++++++++++++++++++++- src/init.ts | 5 ++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/src/init.test.ts b/src/init.test.ts index 740435f6a3..6640e081f3 100644 --- a/src/init.test.ts +++ b/src/init.test.ts @@ -144,6 +144,7 @@ type PackInfo = { language: KnownLanguage; packinfoContents: string | undefined; sourceOnlyPack?: boolean; + qlpackFileName?: string; }; const testCheckPacksForOverlayCompatibility = test.macro({ @@ -174,8 +175,9 @@ const testCheckPacksForOverlayCompatibility = test.macro({ packInfo.packinfoContents, ); } + const qlpackFileName = packInfo.qlpackFileName || "qlpack.yml"; fs.writeFileSync( - path.join(packPath, "qlpack.yml"), + path.join(packPath, qlpackFileName), packInfo.sourceOnlyPack ? `name: ${packName}\nversion: 1.0.0\n` : `name: ${packName}\nversion: 1.0.0\nbuildMetadata:\n sha: 123abc\n`, @@ -423,3 +425,20 @@ test( expectedResult: false, }, ); + +test( + testCheckPacksForOverlayCompatibility, + "returns true when query pack uses codeql-pack.yml filename", + { + cliOverlayVersion: 2, + languages: [KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + qlpackFileName: "codeql-pack.yml", + }, + }, + expectedResult: true, + }, +); diff --git a/src/init.ts b/src/init.ts index 444547f5c4..cd28d876d5 100644 --- a/src/init.ts +++ b/src/init.ts @@ -153,7 +153,10 @@ function checkPackForOverlayCompatibility( logger: Logger, ): boolean { try { - const qlpackPath = path.join(packDir, "qlpack.yml"); + let qlpackPath = path.join(packDir, "qlpack.yml"); + if (!fs.existsSync(qlpackPath)) { + qlpackPath = path.join(packDir, "codeql-pack.yml"); + } const qlpackContents = yaml.load( fs.readFileSync(qlpackPath, "utf8"), ) as QlPack; From e47147711bab2cae6089f637baa13b51de265126 Mon Sep 17 00:00:00 2001 From: Chuan-kai Lin Date: Fri, 8 Aug 2025 10:36:17 -0700 Subject: [PATCH 14/14] build: refresh js files --- lib/analyze.js | 2 +- lib/analyze.js.map | 2 +- lib/analyze.test.js | 1 - lib/analyze.test.js.map | 2 +- lib/codeql.js | 82 +++---------- lib/codeql.js.map | 2 +- lib/config-utils.test.js | 86 +------------- lib/config-utils.test.js.map | 2 +- lib/init-action.js | 28 ++++- lib/init-action.js.map | 2 +- lib/init.js | 99 +++++++++++++-- lib/init.js.map | 2 +- lib/init.test.js | 218 +++++++++++++++++++++++++++++++++- lib/init.test.js.map | 2 +- lib/overlay-database-utils.js | 2 +- lib/testing-utils.js | 7 +- lib/testing-utils.js.map | 2 +- lib/util.js | 7 ++ lib/util.js.map | 2 +- 19 files changed, 370 insertions(+), 180 deletions(-) diff --git a/lib/analyze.js b/lib/analyze.js index 72745445bd..04d14923ff 100644 --- a/lib/analyze.js +++ b/lib/analyze.js @@ -442,7 +442,7 @@ async function runQueries(sarifFolder, memoryFlag, addSnippetsFlag, threadsFlag, const sarifFile = path.join(sarifFolder, `${language}.sarif`); const queries = []; if (config.augmentationProperties.qualityQueriesInput !== undefined) { - queries.push(path.join(util.getCodeQLDatabasePath(config, language), "temp", "config-queries.qls")); + queries.push(util.getGeneratedSuitePath(config, language)); for (const qualityQuery of config.augmentationProperties .qualityQueriesInput) { queries.push(resolveQuerySuiteAlias(language, qualityQuery.uses)); diff --git a/lib/analyze.js.map b/lib/analyze.js.map index 1c29aa78e8..69773bc335 100644 --- a/lib/analyze.js.map +++ b/lib/analyze.js.map @@ -1 +1 @@ -{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuKA,sCA6CC;AAeD,sCAiBC;AA4CD,8DAyBC;AA6RD,wDASC;AAGD,gCAiMC;AAED,kCA8BC;AAED,gEA2CC;AAh3BD,uCAAyB;AACzB,2CAA6B;AAC7B,2CAAyC;AAEzC,gDAAkC;AAClC,8CAAsB;AACtB,8CAAgC;AAEhC,iDAKwB;AACxB,6CAA4C;AAC5C,2CAAgD;AAGhD,6DAAgE;AAChE,+CAA8D;AAC9D,iFAGwC;AACxC,+CAAuC;AACvC,mDAA6D;AAC7D,2CAAsD;AACtD,uCAAmD;AACnD,qEAA+D;AAC/D,6CAAuD;AAEvD,mDAAuD;AACvD,6CAA+B;AAC/B,iCAAmC;AAEnC,MAAa,mBAAoB,SAAQ,KAAK;IAC5C,YACS,mBAAwC,EACxC,OAAe,EACf,KAAY;QAEnB,KAAK,CAAC,OAAO,CAAC,CAAC;QAJR,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,YAAO,GAAP,OAAO,CAAQ;QACf,UAAK,GAAL,KAAK,CAAO;QAGnB,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AATD,kDASC;AA6GD,KAAK,UAAU,oBAAoB,CAAC,MAAc;IAChD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAClD,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5D,+FAA+F;QAC/F,OAAO;IACT,CAAC;IAED,MAAM,CAAC,OAAO,CACZ,iSAAiS;QAC/R,mPAAmP,CACtP,CAAC;IACF,OAAO;AACT,CAAC;AAEM,KAAK,UAAU,aAAa,CACjC,MAAc,EACd,MAA0B,EAC1B,MAAc;IAEd,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACxC,IAAI,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;YAC5C,MAAM,CAAC,KAAK,CACV,gBAAgB,QAAQ,mDAAmD,CAC5E,CAAC;YACF,SAAS;QACX,CAAC;QAED,IAAI,MAAM,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC1D,MAAM,CAAC,UAAU,CAAC,cAAc,QAAQ,EAAE,CAAC,CAAC;YAC5C,IAAI,QAAQ,KAAK,yBAAa,CAAC,MAAM,EAAE,CAAC;gBACtC,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;YACrC,CAAC;YACD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,IACE,QAAQ,KAAK,yBAAa,CAAC,GAAG;oBAC9B,MAAM,CAAC,SAAS,KAAK,gBAAS,CAAC,SAAS,EACxC,CAAC;oBACD,MAAM,IAAA,6BAAiB,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAC1C,CAAC;gBAED,gFAAgF;gBAChF,kFAAkF;gBAClF,8EAA8E;gBAC9E,sFAAsF;gBACtF,IACE,QAAQ,KAAK,yBAAa,CAAC,IAAI;oBAC/B,MAAM,CAAC,SAAS,KAAK,gBAAS,CAAC,IAAI,EACnC,CAAC;oBACD,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC;wBAClE,IAAA,6CAAwB,GAAE,CAAC;gBAC/B,CAAC;gBAED,MAAM,MAAM,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACxD,CAAC;YACD,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,MAAc,EACd,MAA0B,EAC1B,QAAkB;IAElB,OAAO,CACL,MAAM,CAAC,SAAS,KAAK,gBAAS,CAAC,IAAI;QACnC,CAAC,MAAM,CAAC,SAAS,KAAK,gBAAS,CAAC,SAAS;YACvC,OAAO,CAAC,GAAG,CAAC,oBAAM,CAAC,mCAAmC,CAAC,KAAK,MAAM,CAAC;QACrE,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAClE,CAAC;AACJ,CAAC;AAED,SAAgB,aAAa,CAC3B,MAA0B,EAC1B,QAAkB,EAClB,MAAc;IAEd,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC5D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CACtB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,qBAAqB,CAAC,EAAE,MAAM,CAAC,CACzC,CAAC;QAC9B,OAAO,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,OAAO,CACZ,wCAAwC,QAAQ,qCAAqC,CACtF,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,MAAc,EACd,MAA0B,EAC1B,WAAmB,EACnB,UAAkB,EAClB,MAAc;IAEd,MAAM,eAAe,GAAG,wBAAW,CAAC,GAAG,EAAE,CAAC;IAC1C,MAAM,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,wBAAW,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC;IAE3D,MAAM,eAAe,GAAG,wBAAW,CAAC,GAAG,EAAE,CAAC;IAC1C,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACxC,IAAI,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;YAC5C,MAAM,CAAC,IAAI,CACT,6CAA6C,QAAQ,sFAAsF,CAC5I,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,UAAU,CAAC,cAAc,QAAQ,EAAE,CAAC,CAAC;YAC5C,MAAM,MAAM,CAAC,gBAAgB,CAC3B,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAC5C,WAAW,EACX,UAAU,EACV,MAAM,CAAC,SAAS,CACjB,CAAC;YACF,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IACD,MAAM,cAAc,GAAG,wBAAW,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC;IAE3D,OAAO;QACL,uCAAuC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QACnE,uBAAuB,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;KACpD,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,yBAAyB,CAC7C,QAA6B,EAC7B,MAAc;IAEd,OAAO,MAAM,IAAA,wBAAc,EACzB,sCAAsC,EACtC,KAAK,IAAI,EAAE;QACT,MAAM,CAAC,IAAI,CACT,+BAA+B,QAAQ,CAAC,IAAI,MAAM,QAAQ,CAAC,IAAI,EAAE,CAClE,CAAC;QACF,MAAM,UAAU,GAAG,MAAM,8BAA8B,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1E,MAAM,OAAO,GAAG,+BAA+B,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACpE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,CAAC,OAAO,CACZ,qEAAqE;gBACnE,wCAAwC,CAC3C,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CACT,qDAAqD,OAAO,GAAG,CAChE,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,8BAA8B,CAC3C,QAA6B,EAC7B,MAAc;IAEd,MAAM,SAAS,GAAG,MAAM,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;QAC5B,2EAA2E;QAC3E,2EAA2E;QAC3E,wEAAwE;QACxE,8DAA8D;QAC9D,MAAM,CAAC,OAAO,CACZ,2DAA2D;YACzD,IAAI,SAAS,CAAC,MAAM,sCAAsC,CAC7D,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACnD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAcD,KAAK,UAAU,wBAAwB,CACrC,QAA6B,EAC7B,MAAc;IAEd,6EAA6E;IAC7E,wBAAwB;IACxB,MAAM,aAAa,GAAG,IAAA,oCAAuB,EAC3C,0BAA0B,EAC1B,mBAAmB,CACpB,CAAC;IACF,MAAM,QAAQ,GAAG,GAAG,QAAQ,CAAC,IAAI,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAA,yBAAY,GAAE,CAAC,IAAI,CAAC,KAAK,CAAC,0BAA0B,CACzE;YACE,KAAK,EAAE,aAAa,CAAC,KAAK;YAC1B,IAAI,EAAE,aAAa,CAAC,IAAI;YACxB,QAAQ;YACR,QAAQ,EAAE,CAAC;SACZ,CACF,CAAC;QACF,MAAM,CAAC,KAAK,CACV,4CAA4C,QAAQ,IAAI;YACtD,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAC3C,CAAC;QACF,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;IAC7B,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,CAAC,OAAO,CAAC,yBAAyB,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,MAAM,CAAC,KAAK,CACV,4CAA4C,QAAQ,IAAI;gBACtD,cAAc,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;gBACtD,qBAAqB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CACjE,CAAC;YACF,OAAO,SAAS,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CACpB,QAAkB,EAClB,MAAc;IAEd,2EAA2E;IAC3E,uEAAuE;IACvE,gDAAgD;IAChD,MAAM,QAAQ,GAAG,IAAI;SAClB,IAAI,CAAC,IAAA,+BAAgB,EAAC,eAAe,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC;SAC1D,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAE7B,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACjC,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;YAC3B,sEAAsE;YACtE,wEAAwE;YACxE,oEAAoE;YACpE,yEAAyE;YACzE,gDAAgD;YAChD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,0EAA0E;QAC1E,0EAA0E;QAC1E,uDAAuD;QACvD,OAAO;YACL;gBACE,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,CAAC;gBACZ,OAAO,EAAE,CAAC;aACX;SACF,CAAC;IACJ,CAAC;IAED,mDAAmD;IACnD,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,4EAA4E;IAC5E,IAAI,sBAAsB,GAAuB,SAAS,CAAC;IAC3D,MAAM,UAAU,GAAqB,EAAE,CAAC;IAExC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7C,6EAA6E;IAC7E,kDAAkD;IAClD,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEpB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,2EAA2E;YAC3E,iDAAiD;YACjD,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;gBACzC,sBAAsB,GAAG,WAAW,CAAC;YACvC,CAAC;YACD,WAAW,EAAE,CAAC;YACd,SAAS;QACX,CAAC;QACD,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;YACzC,wEAAwE;YACxE,wBAAwB;YACxB,UAAU,CAAC,IAAI,CAAC;gBACd,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,sBAAsB;gBACjC,OAAO,EAAE,WAAW,GAAG,CAAC;aACzB,CAAC,CAAC;YACH,sBAAsB,GAAG,SAAS,CAAC;QACrC,CAAC;QACD,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,yDAAyD;YACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACtE,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,MAAM,CAAC,OAAO,CACZ,qCAAqC,QAAQ,CAAC,QAAQ,KAAK,QAAQ,EAAE,CACtE,CAAC;gBACF,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACrC,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,8DAA8D;YAC9D,WAAW,EAAE,CAAC;YACd,SAAS;QACX,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,+BAA+B,CACtC,MAAc,EACd,MAAoC;IAEpC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,yEAAyE;QACzE,oEAAoE;QACpE,wEAAwE;QACxE,yEAAyE;QACzE,kEAAkE;QAClE,MAAM,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAA,oCAAqB,GAAE,EAAE,eAAe,CAAC,CAAC;IAEzE,4EAA4E;IAC5E,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,SAAS;IACT,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,EAAE,CAAC,aAAa,CACd,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,EACrC;;;;;;;;CAQH,CACE,CAAC;IAEF,MAAM,MAAM,GAAG;;;;;;;CAOhB,CAAC;IAEA,IAAI,IAAI,GAAG,MAAM;SACd,GAAG,CACF,CAAC,KAAK,EAAE,EAAE;IACR,sEAAsE;IACtE,oEAAoE;IACpE,kCAAkC;IAClC,YAAY,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI;QACnE,GAAG,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,OAAO,KAAK,CAC5C;SACA,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,2EAA2E;QAC3E,mEAAmE;QACnE,IAAI,GAAG,sBAAsB,CAAC;IAChC,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,GAAG,IAAI,CAAC;IACxC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;IACvE,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;IACvD,MAAM,CAAC,KAAK,CACV,yCAAyC,iBAAiB,MAAM,iBAAiB,EAAE,CACpF,CAAC;IAEF,+EAA+E;IAC/E,qBAAqB;IACrB,IAAA,sDAAuB,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,qEAAqE;AACxD,QAAA,aAAa,GAAgB,IAAI,GAAG,CAAC;IAChD,uBAAuB;IACvB,mBAAmB;IACnB,sBAAsB;IACtB,cAAc;IACd,eAAe;CAChB,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,SAAgB,sBAAsB,CACpC,QAAkB,EAClB,UAAkB;IAElB,IAAI,qBAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QAClC,OAAO,GAAG,QAAQ,IAAI,UAAU,MAAM,CAAC;IACzC,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,2DAA2D;AACpD,KAAK,UAAU,UAAU,CAC9B,WAAmB,EACnB,UAAkB,EAClB,eAAuB,EACvB,WAAmB,EACnB,gBAAoC,EACpC,mBAAuC,EACvC,MAAc,EACd,MAA0B,EAC1B,MAAc,EACd,QAA2B;IAE3B,MAAM,YAAY,GAAwB,EAAE,CAAC;IAC7C,MAAM,UAAU,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC7C,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,mEAAmE;IACnE,IACE,MAAM,CAAC,sBAAsB,CAAC,mBAAmB;QACjD,4CAAmB,CAAC,WAAW,EAC/B,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IAED,YAAY,CAAC,yBAAyB,GAAG,gBAAgB,KAAK,SAAS,CAAC;IACxE,IAAI,gBAAgB,EAAE,CAAC;QACrB,UAAU,CAAC,IAAI,CAAC,sBAAsB,gBAAgB,EAAE,CAAC,CAAC;QAC1D,UAAU,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QACjE,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACxC,CAAC;IAED,YAAY,CAAC,mBAAmB;QAC9B,MAAM,CAAC,sBAAsB,CAAC,mBAAmB;YACjD,4CAAmB,CAAC,OAAO,CAAC;IAC9B,YAAY,CAAC,qCAAqC;QAChD,MAAM,CAAC,sBAAsB,CAAC,mBAAmB;YACjD,4CAAmB,CAAC,WAAW,CAAC;IAClC,IACE,MAAM,CAAC,sBAAsB,CAAC,mBAAmB;QACjD,4CAAmB,CAAC,OAAO,EAC3B,CAAC;QACD,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,oBAAoB,GACxB,eAAe,CAAC,MAAM,GAAG,CAAC;QACxB,CAAC,CAAC,wCAAwC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QACrE,CAAC,CAAC,SAAS,CAAC;IAEhB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,QAAQ,QAAQ,CAAC,CAAC;YAE9D,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,IAAI,MAAM,CAAC,sBAAsB,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBACpE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;gBAC3D,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,sBAAsB;qBACrD,mBAAmB,EAAE,CAAC;oBACvB,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YAED,+CAA+C;YAC/C,oDAAoD;YACpD,oDAAoD;YACpD,oCAAoC;YACpC,MAAM,CAAC,UAAU,CAAC,uBAAuB,QAAQ,EAAE,CAAC,CAAC;YACrD,MAAM,mBAAmB,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACjD,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAClE,MAAM,MAAM,CAAC,kBAAkB,CAAC,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACnE,MAAM,CAAC,KAAK,CAAC,gCAAgC,QAAQ,GAAG,CAAC,CAAC;YAC1D,6EAA6E;YAC7E,gDAAgD;YAChD,YAAY,CAAC,2BAA2B,QAAQ,cAAc,CAAC;gBAC7D,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,mBAAmB,CAAC;YAE7C,MAAM,CAAC,UAAU,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;YAC1D,MAAM,yBAAyB,GAAG,IAAI,IAAI,EAAE,CAAC;YAC7C,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAC/C,QAAQ,EACR,SAAS,EACT,SAAS,EACT,MAAM,CAAC,SAAS,EAChB,mBAAmB,CACpB,CAAC;YAEF,IAAI,sBAA0C,CAAC;YAC/C,IAAI,MAAM,CAAC,sBAAsB,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBACpE,MAAM,CAAC,IAAI,CAAC,oCAAoC,QAAQ,EAAE,CAAC,CAAC;gBAC5D,MAAM,eAAe,GAAG,IAAA,qCAAsB,EAC5C,MAAM,EACN,mBAAmB,CACpB,CAAC;gBACF,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAChC,WAAW,EACX,GAAG,QAAQ,gBAAgB,CAC5B,CAAC;gBACF,sBAAsB,GAAG,MAAM,mBAAmB,CAChD,QAAQ,EACR,MAAM,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1D,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CACzC,EACD,gBAAgB,EAChB,MAAM,CAAC,SAAS,EAChB,eAAe,CAChB,CAAC;YACJ,CAAC;YACD,MAAM,uBAAuB,GAAG,IAAI,IAAI,EAAE,CAAC;YAC3C,YAAY,CAAC,qBAAqB,QAAQ,cAAc,CAAC;gBACvD,uBAAuB,CAAC,OAAO,EAAE,GAAG,yBAAyB,CAAC,OAAO,EAAE,CAAC;YAC1E,MAAM,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAE7B,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YACtC,CAAC;YAED,IAAI,MAAM,QAAQ,CAAC,QAAQ,CAAC,uBAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBACxD,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;gBAE9D,MAAM,6BAA6B,GAAgB;oBACjD,KAAK,EAAE,mCAAmC;oBAC1C,UAAU,EAAE,yBAAyB,CAAC,WAAW,EAAE;oBACnD,YAAY,EAAE,uBAAuB,CAAC,WAAW,EAAE;oBACnD,WAAW,EAAE,SAAS;oBACtB,QAAQ;oBACR,UAAU,EAAE;wBACV,WAAW,EAAE,mBAAmB;qBACjC;iBACF,CAAC;gBAEF,IAAI,YAAY,CAAC,eAAe,CAAC,KAAK,SAAS,EAAE,CAAC;oBAChD,YAAY,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC;gBACrC,CAAC;gBACD,YAAY,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,CAAC,wBAAwB,GAAG,QAAQ,CAAC;YACjD,MAAM,IAAI,mBAAmB,CAC3B,YAAY,EACZ,8BAA8B,QAAQ,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EACpE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAClB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAC;IAEpB,KAAK,UAAU,mBAAmB,CAChC,QAAkB,EAClB,OAA6B,EAC7B,SAAiB,EACjB,kBAA2B,EAC3B,QAA4B;QAE5B,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClE,OAAO,MAAM,MAAM,CAAC,wBAAwB,CAC1C,YAAY,EACZ,OAAO,EACP,SAAS,EACT,eAAe,EACf,WAAW,EACX,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACjC,oBAAoB,EACpB,QAAQ,EACR,MAAM,EACN,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,qFAAqF;IACrF,SAAS,sBAAsB,CAAC,SAAiB;QAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC5B,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CACjB,CAAC;QACpB,iGAAiG;QAEjG,yCAAyC;QACzC,MAAM,mBAAmB,GAA2B,EAAE,CAAC;QAEvD,uDAAuD;QACvD,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;YACxC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACtC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC;oBAC/C,IAAI,KAAK,EAAE,CAAC;wBACV,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBACrE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,mBAAmB,CAAC;IAC7B,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,WAAmB,EACnB,UAAkB,EAClB,MAAc,EACd,MAA0B,EAC1B,MAAc;IAEd,IAAI,CAAC;QACH,MAAM,IAAA,aAAG,EAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IACD,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAExD,MAAM,OAAO,GAAG,MAAM,wBAAwB,CAC5C,MAAM,EACN,MAAM,EACN,WAAW,EACX,UAAU,EACV,MAAM,CACP,CAAC;IAEF,wEAAwE;IACxE,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAM,CAAC,mCAAmC,CAAC,KAAK,MAAM,EAAE,CAAC;QACvE,MAAM,IAAA,oCAAoB,EAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAEM,KAAK,UAAU,0BAA0B,CAC9C,MAA0B,EAC1B,MAAc;IAEd,gHAAgH;IAChH,mHAAmH;IACnH,sDAAsD;IACtD,gHAAgH;IAChH,mHAAmH;IACnH,6EAA6E;IAC7E,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAM,CAAC,kBAAkB,CAAC,CAAC;IAE1D,IACE,OAAO,CAAC,GAAG,CAAC,oBAAM,CAAC,oBAAoB,CAAC,KAAK,MAAM;QACnD,UAAU,KAAK,SAAS,EACxB,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEhD,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,CAAC,OAAO,CACZ,mCAAmC,UAAU,aAAa,YAAY,+GAA+G,CACtL,CAAC;YAEF,IAAA,2BAAa,EACX,MAAM,EACN,yBAAa,CAAC,EAAE,EAChB,IAAA,4BAAc,EACZ,4CAA4C,EAC5C,gEAAgE,EAChE;gBACE,eAAe,EACb,sIAAsI;gBACxI,UAAU,EAAE;oBACV,UAAU,EAAE,IAAI;oBAChB,SAAS,EAAE,IAAI;oBACf,eAAe,EAAE,IAAI;iBACtB;gBACD,QAAQ,EAAE,SAAS;aACpB,CACF,CACF,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAEY,QAAA,kBAAkB,GAAG;IAChC,aAAa;CACd,CAAC"} \ No newline at end of file diff --git a/lib/analyze.test.js b/lib/analyze.test.js index d703a4d49a..915f7864d3 100644 --- a/lib/analyze.test.js +++ b/lib/analyze.test.js @@ -66,7 +66,6 @@ const util = __importStar(require("./util")); for (const language of Object.values(languages_1.KnownLanguage)) { const codeql = (0, codeql_1.createStubCodeQL)({ databaseRunQueries: async () => { }, - packDownload: async () => ({ packs: [] }), databaseInterpretResults: async (_db, _queriesRun, sarifFile) => { fs.writeFileSync(sarifFile, JSON.stringify({ runs: [ diff --git a/lib/analyze.test.js.map b/lib/analyze.test.js.map index c54ab71ab6..410ead3115 100644 --- a/lib/analyze.test.js.map +++ b/lib/analyze.test.js.map @@ -1 +1 @@ -{"version":3,"file":"analyze.test.js","sourceRoot":"","sources":["../src/analyze.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"analyze.test.js","sourceRoot":"","sources":["../src/analyze.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/codeql.js b/lib/codeql.js index 9e744b5398..4a82ce3916 100644 --- a/lib/codeql.js +++ b/lib/codeql.js @@ -195,9 +195,7 @@ function createStubCodeQL(partialCodeql) { finalizeDatabase: resolveFunction(partialCodeql, "finalizeDatabase"), resolveLanguages: resolveFunction(partialCodeql, "resolveLanguages"), betterResolveLanguages: resolveFunction(partialCodeql, "betterResolveLanguages", async () => ({ aliases: {}, extractors: {} })), - resolveQueries: resolveFunction(partialCodeql, "resolveQueries"), resolveBuildEnvironment: resolveFunction(partialCodeql, "resolveBuildEnvironment"), - packDownload: resolveFunction(partialCodeql, "packDownload"), databaseCleanupCluster: resolveFunction(partialCodeql, "databaseCleanupCluster"), databaseBundle: resolveFunction(partialCodeql, "databaseBundle"), databaseRunQueries: resolveFunction(partialCodeql, "databaseRunQueries"), @@ -206,6 +204,7 @@ function createStubCodeQL(partialCodeql) { databaseExportDiagnostics: resolveFunction(partialCodeql, "databaseExportDiagnostics"), diagnosticsExport: resolveFunction(partialCodeql, "diagnosticsExport"), resolveExtractor: resolveFunction(partialCodeql, "resolveExtractor"), + resolveQueriesStartingPacks: resolveFunction(partialCodeql, "resolveQueriesStartingPacks"), mergeResults: resolveFunction(partialCodeql, "mergeResults"), }; } @@ -419,25 +418,6 @@ async function getCodeQLForCmd(cmd, checkVersion) { throw new Error(`Unexpected output from codeql resolve languages with --format=betterjson: ${e}`); } }, - async resolveQueries(queries, extraSearchPath) { - const codeqlArgs = [ - "resolve", - "queries", - ...queries, - "--format=bylanguage", - ...getExtraOptionsFromEnv(["resolve", "queries"]), - ]; - if (extraSearchPath !== undefined) { - codeqlArgs.push("--additional-packs", extraSearchPath); - } - const output = await runCli(cmd, codeqlArgs); - try { - return JSON.parse(output); - } - catch (e) { - throw new Error(`Unexpected output from codeql resolve queries: ${e}`); - } - }, async resolveBuildEnvironment(workingDir, language) { const codeqlArgs = [ "resolve", @@ -527,50 +507,6 @@ async function getCodeQLForCmd(cmd, checkVersion) { ]; return await runCli(cmd, codeqlArgs); }, - /** - * Download specified packs into the package cache. If the specified - * package and version already exists (e.g., from a previous analysis run), - * then it is not downloaded again (unless the extra option `--force` is - * specified). - * - * If no version is specified, then the latest version is - * downloaded. The check to determine what the latest version is is done - * each time this package is requested. - * - * Optionally, a `qlconfigFile` is included. If used, then this file - * is used to determine which registry each pack is downloaded from. - */ - async packDownload(packs, qlconfigFile) { - const qlconfigArg = qlconfigFile - ? [`--qlconfig-file=${qlconfigFile}`] - : []; - const codeqlArgs = [ - "pack", - "download", - ...qlconfigArg, - "--format=json", - "--resolve-query-specs", - ...getExtraOptionsFromEnv(["pack", "download"]), - ...packs, - ]; - const output = await runCli(cmd, codeqlArgs); - try { - const parsedOutput = JSON.parse(output); - if (Array.isArray(parsedOutput.packs) && - // TODO PackDownloadOutput will not include the version if it is not specified - // in the input. The version is always the latest version available. - // It should be added to the output, but this requires a CLI change - parsedOutput.packs.every((p) => p.name /* && p.version */)) { - return parsedOutput; - } - else { - throw new Error("Unexpected output from pack download"); - } - } - catch (e) { - throw new Error(`Attempted to download specified packs but got an error:\n${output}\n${e}`); - } - }, async databaseCleanupCluster(config, cleanupLevel) { const cacheCleanupFlag = (await util.codeQlVersionAtLeast(this, CODEQL_VERSION_CACHE_CLEANUP)) ? "--cache-cleanup" @@ -653,6 +589,22 @@ async function getCodeQLForCmd(cmd, checkVersion) { }).exec(); return JSON.parse(extractorPath); }, + async resolveQueriesStartingPacks(queries) { + const codeqlArgs = [ + "resolve", + "queries", + "--format=startingpacks", + ...getExtraOptionsFromEnv(["resolve", "queries"]), + ...queries, + ]; + const output = await runCli(cmd, codeqlArgs, { noStreamStdout: true }); + try { + return JSON.parse(output); + } + catch (e) { + throw new Error(`Unexpected output from codeql resolve queries --format=startingpacks: ${e}`); + } + }, async mergeResults(sarifFiles, outputFile, { mergeRunsFromEqualCategory = false, }) { const args = [ "github", diff --git a/lib/codeql.js.map b/lib/codeql.js.map index 27987eedd4..eb0e7ca833 100644 --- a/lib/codeql.js.map +++ b/lib/codeql.js.map @@ -1 +1 @@ -{"version":3,"file":"codeql.js","sourceRoot":"","sources":["../src/codeql.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"codeql.js","sourceRoot":"","sources":["../src/codeql.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/config-utils.test.js b/lib/config-utils.test.js index 0d2bf01f19..ba56155873 100644 --- a/lib/config-utils.test.js +++ b/lib/config-utils.test.js @@ -144,19 +144,6 @@ function mockListLanguages(languages) { }, }; }, - async resolveQueries() { - return { - byLanguage: { - javascript: { queries: ["query1.ql"] }, - python: { queries: ["query2.ql"] }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload() { - return { packs: [] }; - }, }); const config = await configUtils.initConfig(createTestInitConfigInputs({ languagesInput: languages, @@ -185,19 +172,6 @@ function mockListLanguages(languages) { }, }; }, - async resolveQueries() { - return { - byLanguage: { - javascript: { queries: ["query1.ql"] }, - python: { queries: ["query2.ql"] }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload() { - return { packs: [] }; - }, }); // Sanity check the saved config file does not already exist t.false(fs.existsSync(configUtils.getPathToParsedConfigFile(tempDir))); @@ -283,21 +257,6 @@ function mockListLanguages(languages) { }, }; }, - async resolveQueries() { - return { - byLanguage: { - javascript: { - "/foo/a.ql": {}, - "/bar/b.ql": {}, - }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload() { - return { packs: [] }; - }, }); // Just create a generic config object with non-default values for all fields const inputFileContents = ` @@ -350,24 +309,6 @@ function mockListLanguages(languages) { t.deepEqual(actualConfig, expectedConfig); }); }); -/** - * Returns the provided queries, just in the right format for a resolved query - * This way we can test by seeing which returned items are in the final - * configuration. - */ -function queriesToResolvedQueryForm(queries) { - const dummyResolvedQueries = {}; - for (const q of queries) { - dummyResolvedQueries[q] = {}; - } - return { - byLanguage: { - javascript: dummyResolvedQueries, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; -} (0, ava_1.default)("Using config input and file together, config input should be used.", async (t) => { return await (0, util_1.withTmpDir)(async (tempDir) => { process.env["RUNNER_TEMP"] = tempDir; @@ -388,7 +329,6 @@ function queriesToResolvedQueryForm(queries) { - c/d@1.2.3 `; fs.mkdirSync(path.join(tempDir, "foo")); - const resolveQueriesArgs = []; const codeql = (0, codeql_1.createStubCodeQL)({ async betterResolveLanguages() { return { @@ -398,13 +338,6 @@ function queriesToResolvedQueryForm(queries) { }, }; }, - async resolveQueries(queries, extraSearchPath) { - resolveQueriesArgs.push({ queries, extraSearchPath }); - return queriesToResolvedQueryForm(queries); - }, - async packDownload() { - return { packs: [] }; - }, }); // Only JS, python packs will be ignored const languagesInput = "javascript"; @@ -429,20 +362,6 @@ function queriesToResolvedQueryForm(queries) { }, }; }, - async resolveQueries() { - return { - byLanguage: { - javascript: { - "foo.ql": {}, - }, - }, - noDeclaredLanguage: {}, - multipleDeclaredLanguages: {}, - }; - }, - async packDownload() { - return { packs: [] }; - }, }); const inputFileContents = ` name: my config @@ -519,9 +438,6 @@ function queriesToResolvedQueryForm(queries) { async resolveLanguages() { return {}; }, - async packDownload() { - return { packs: [] }; - }, }); try { await configUtils.initConfig(createTestInitConfigInputs({ @@ -897,7 +813,7 @@ const defaultOverlayDatabaseModeTestSetup = { repositoryOwner: "github", buildMode: util_1.BuildMode.None, languages: [languages_1.KnownLanguage.javascript], - codeqlVersion: "2.21.0", + codeqlVersion: overlay_database_utils_1.CODEQL_OVERLAY_MINIMUM_VERSION, gitRoot: "/some/git/root", codeScanningConfig: {}, }; diff --git a/lib/config-utils.test.js.map b/lib/config-utils.test.js.map index a8ecd5e44a..1860b064b5 100644 --- a/lib/config-utils.test.js.map +++ b/lib/config-utils.test.js.map @@ -1 +1 @@ -{"version":3,"file":"config-utils.test.js","sourceRoot":"","sources":["../src/config-utils.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"config-utils.test.js","sourceRoot":"","sources":["../src/config-utils.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/init-action.js b/lib/init-action.js index 3d8e9bcaab..33adad02eb 100644 --- a/lib/init-action.js +++ b/lib/init-action.js @@ -55,6 +55,7 @@ const repository_1 = require("./repository"); const setup_codeql_1 = require("./setup-codeql"); const status_report_1 = require("./status-report"); const tools_features_1 = require("./tools-features"); +const tracer_config_1 = require("./tracer-config"); const util_1 = require("./util"); const workflow_1 = require("./workflow"); async function sendCompletedStatusReport(startedAt, config, configFile, toolsDownloadStatusReport, toolsFeatureFlagsValid, toolsSource, toolsVersion, overlayBaseDatabaseStats, logger, error) { @@ -457,7 +458,32 @@ async function run() { core.exportVariable("CODEQL_EXTRACTOR_PYTHON_EXTRACT_STDLIB", "true"); } } - const tracerConfig = await (0, init_1.runInit)(codeql, config, sourceRoot, "Runner.Worker.exe", (0, actions_util_1.getOptionalInput)("registries"), apiDetails, logger); + const { registriesAuthTokens, qlconfigFile } = await configUtils.generateRegistries((0, actions_util_1.getOptionalInput)("registries"), config.tempDir, logger); + const databaseInitEnvironment = { + GITHUB_TOKEN: apiDetails.auth, + CODEQL_REGISTRIES_AUTH: registriesAuthTokens, + }; + await (0, init_1.runDatabaseInitCluster)(databaseInitEnvironment, codeql, config, sourceRoot, "Runner.Worker.exe", qlconfigFile, logger); + // To check custom query packs for compatibility with overlay analysis, we + // need to first initialize the database cluster, which downloads the + // user-specified custom query packs. But we also want to check custom query + // pack compatibility first, because database cluster initialization depends + // on the overlay database mode. The solution is to initialize the database + // cluster first, check custom query pack compatibility, and if we need to + // revert to `OverlayDatabaseMode.None`, re-initialize the database cluster + // with the new overlay database mode. + if (config.augmentationProperties.overlayDatabaseMode !== + overlay_database_utils_1.OverlayDatabaseMode.None && + !(await (0, init_1.checkPacksForOverlayCompatibility)(codeql, config, logger))) { + logger.info("Reverting overlay database mode to None due to incompatible packs."); + config.augmentationProperties.overlayDatabaseMode = + overlay_database_utils_1.OverlayDatabaseMode.None; + (0, init_1.cleanupDatabaseClusterDirectory)(config, logger, { + disableExistingDirectoryWarning: true, + }); + await (0, init_1.runDatabaseInitCluster)(databaseInitEnvironment, codeql, config, sourceRoot, "Runner.Worker.exe", qlconfigFile, logger); + } + const tracerConfig = await (0, tracer_config_1.getCombinedTracerConfig)(codeql, config); if (tracerConfig !== undefined) { for (const [key, value] of Object.entries(tracerConfig.env)) { core.exportVariable(key, value); diff --git a/lib/init-action.js.map b/lib/init-action.js.map index 5d15faf2b7..c06e5069cb 100644 --- a/lib/init-action.js.map +++ b/lib/init-action.js.map @@ -1 +1 @@ -{"version":3,"file":"init-action.js","sourceRoot":"","sources":["../src/init-action.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,oDAAsC;AACtC,gDAAkC;AAClC,+CAAiC;AACjC,+BAAoC;AAEpC,iDASwB;AACxB,6CAAgD;AAChD,mDAIyB;AAEzB,4DAA8C;AAC9C,6DAAgE;AAChE,+CAKuB;AACvB,+CAAuC;AACvC,mDAAmE;AACnE,iCAMgB;AAChB,2CAA4C;AAC5C,uCAAqD;AACrD,qEAIkC;AAClC,6CAAgD;AAChD,iDAA6C;AAC7C,mDAMyB;AAGzB,qDAAgD;AAChD,iCAiBgB;AAChB,yCAA8C;AAsD9C,KAAK,UAAU,yBAAyB,CACtC,SAAe,EACf,MAAsC,EACtC,UAA8B,EAC9B,yBAAgE,EAChE,sBAA2C,EAC3C,WAAwB,EACxB,YAAoB,EACpB,wBAAsE,EACtE,MAAc,EACd,KAAa;IAEb,MAAM,gBAAgB,GAAG,MAAM,IAAA,sCAAsB,EACnD,0BAAU,CAAC,IAAI,EACf,IAAA,gCAAgB,EAAC,KAAK,CAAC,EACvB,SAAS,EACT,MAAM,EACN,MAAM,IAAA,qBAAc,EAAC,MAAM,CAAC,EAC5B,MAAM,EACN,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,KAAK,CACb,CAAC;IAEF,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACnC,OAAO;IACT,CAAC;IAED,MAAM,iBAAiB,GAAG,IAAA,+BAAgB,EAAC,WAAW,CAAC,CAAC;IAExD,MAAM,gBAAgB,GAAqB;QACzC,GAAG,gBAAgB;QACnB,WAAW,EAAE,IAAA,+BAAgB,EAAC,OAAO,CAAC,IAAI,EAAE;QAC5C,sBAAsB,EAAE,YAAY;QACpC,YAAY,EAAE,WAAW,IAAI,0BAAW,CAAC,OAAO;QAChD,kBAAkB,EAAE,iBAAiB,IAAI,EAAE;KAC5C,CAAC;IAEF,MAAM,uBAAuB,GAA4B,EAAE,CAAC;IAE5D,IAAI,yBAAyB,EAAE,kBAAkB,KAAK,SAAS,EAAE,CAAC;QAChE,uBAAuB,CAAC,0BAA0B;YAChD,yBAAyB,CAAC,kBAAkB,CAAC;IACjD,CAAC;IACD,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;QACzC,uBAAuB,CAAC,yBAAyB,GAAG,sBAAsB,CAAC;IAC7E,CAAC;IAED,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CACvE,GAAG,CACJ,CAAC;QACF,MAAM,qBAAqB,GAAG,MAAM,CAAC,iBAAiB,CACpD,yBAAyB,CAC1B;YACC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,YAAY,GAAG,IAAA,+BAAgB,EAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC;QACvD,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/D,OAAO,CAAC,IAAI,CACV,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAC/D,CAAC;QACJ,CAAC;QACD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC;gBACzC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;gBACvB,CAAC,CAAC,YAAY,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,KAAK,GAA6B,EAAE,CAAC;QACzC,IACE,CAAC,MAAM,CAAC,sBAAsB,CAAC,kBAAkB;YAC/C,CAAC,MAAM,CAAC,sBAAsB,CAAC,UAAU,CAAC;YAC5C,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAC9B,CAAC;YACD,gDAAgD;YAChD,MAAM,8BAA8B,GAAG,IAAA,kBAAW,EAChD,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAC/B,CAAC;YACF,iFAAiF;YACjF,IAAI,KAAK,CAAC,OAAO,CAAC,8BAA8B,CAAC,EAAE,CAAC;gBAClD,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,8BAA8B,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,8BAA8B,CAAC;YACzC,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,sBAAsB,CAAC,UAAU,EAAE,CAAC;YAC7C,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;YAClC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAC7B,GAAG,MAAM,CAAC,sBAAsB,CAAC,UAAU,CAC5C,CAAC;QACJ,CAAC;QAED,+CAA+C;QAC/C,MAAM,0BAA0B,GAA+B;YAC7D,GAAG,gBAAgB;YACnB,WAAW,EAAE,UAAU,IAAI,EAAE;YAC7B,uBAAuB,EAAE,qBAAqB;YAC9C,KAAK;YACL,YAAY,EAAE,WAAW;YACzB,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;YAC1B,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAC5B,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAC9D,8BAA8B,EAAE,IAAI,CAAC,KAAK,CACxC,MAAM,IAAA,iCAAiB,EAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAClE;YACD,+BAA+B,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC;YACzE,yCAAyC,EACvC,wBAAwB,EAAE,iBAAiB;YAC7C,0CAA0C,EACxC,wBAAwB,EAAE,0BAA0B;YACtD,aAAa,EAAE,IAAI,CAAC,SAAS,CAC3B,MAAM,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,EAAE,CAChD;YACD,UAAU,EAAE,IAAI,CAAC,SAAS,CACxB,WAAW,CAAC,iCAAiC,CAC3C,IAAA,+BAAgB,EAAC,YAAY,CAAC,CAC/B,IAAI,EAAE,CACR;SACF,CAAC;QACF,MAAM,IAAA,gCAAgB,EAAC;YACrB,GAAG,0BAA0B;YAC7B,GAAG,uBAAuB;SAC3B,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,IAAA,gCAAgB,EAAC,EAAE,GAAG,gBAAgB,EAAE,GAAG,uBAAuB,EAAE,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,KAAK,UAAU,GAAG;IAChB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,IAAA,0BAAgB,GAAE,CAAC;IAClC,IAAA,4BAAqB,EAAC,IAAA,+BAAgB,GAAE,CAAC,CAAC;IAE1C,6CAA6C;IAC7C,IAAA,4BAAa,GAAE,CAAC;IAEhB,IAAI,MAAsC,CAAC;IAC3C,IAAI,MAAc,CAAC;IACnB,IAAI,yBAAgE,CAAC;IACrE,IAAI,sBAA2C,CAAC;IAChD,IAAI,WAAwB,CAAC;IAC7B,IAAI,YAAoB,CAAC;IACzB,IAAI,gBAA8C,CAAC;IAEnD,MAAM,UAAU,GAAG;QACjB,IAAI,EAAE,IAAA,+BAAgB,EAAC,OAAO,CAAC;QAC/B,gBAAgB,EAAE,IAAA,+BAAgB,EAAC,2BAA2B,CAAC;QAC/D,GAAG,EAAE,IAAA,0BAAmB,EAAC,mBAAmB,CAAC;QAC7C,MAAM,EAAE,IAAA,0BAAmB,EAAC,gBAAgB,CAAC;KAC9C,CAAC;IAEF,MAAM,aAAa,GAAG,MAAM,IAAA,6BAAgB,GAAE,CAAC;IAC/C,IAAA,gCAAyB,EAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACjD,IAAA,yBAAkB,EAAC,IAAA,+BAAgB,GAAE,EAAE,aAAa,CAAC,CAAC;IAEtD,MAAM,aAAa,GAAG,IAAA,6BAAgB,GAAE,CAAC;IAEzC,MAAM,QAAQ,GAAG,IAAI,wBAAQ,CAC3B,aAAa,EACb,aAAa,EACb,IAAA,oCAAqB,GAAE,EACvB,MAAM,CACP,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,SAAM,GAAE,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,mBAAmB,UAAU,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,cAAc,CAAC,oBAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAErD,IAAI,CAAC,cAAc,CAAC,oBAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAExD,MAAM,UAAU,GAAG,IAAA,+BAAgB,EAAC,aAAa,CAAC,CAAC;IAEnD,oEAAoE;IACpE,sEAAsE;IACtE,gDAAgD;IAChD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAC7B,IAAA,0BAAmB,EAAC,kBAAkB,CAAC,EACvC,IAAA,+BAAgB,EAAC,aAAa,CAAC,IAAI,EAAE,CACtC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,gBAAgB,GAAG,MAAM,IAAA,sCAAsB,EACnD,0BAAU,CAAC,IAAI,EACf,UAAU,EACV,SAAS,EACT,MAAM,EACN,MAAM,IAAA,qBAAc,EAAC,MAAM,CAAC,EAC5B,MAAM,CACP,CAAC;QACF,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAA,gCAAgB,EAAC,gBAAgB,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,wBAAwB,GAAG,MAAM,QAAQ,CAAC,oBAAoB,CAClE,aAAa,CAAC,IAAI,CACnB,CAAC;QACF,sBAAsB,GAAG,wBAAwB,CAAC,sBAAsB,CAAC;QACzE,MAAM,gBAAgB,GAAG,MAAM,IAAA,iBAAU,EACvC,IAAA,+BAAgB,EAAC,OAAO,CAAC,EACzB,UAAU,EACV,IAAA,oCAAqB,GAAE,EACvB,aAAa,CAAC,IAAI,EAClB,wBAAwB,EACxB,QAAQ,EACR,MAAM,CACP,CAAC;QACF,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC;QACjC,yBAAyB,GAAG,gBAAgB,CAAC,yBAAyB,CAAC;QACvE,YAAY,GAAG,gBAAgB,CAAC,YAAY,CAAC;QAC7C,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC;QAC3C,gBAAgB,GAAG,gBAAgB,CAAC,gBAAgB,CAAC;QAErD,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;QACvC,MAAM,sBAAsB,GAAG,MAAM,IAAA,2BAAgB,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtE,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CACZ,8CAA8C,sBAAsB,EAAE,CACvE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,oFAAoF;QACpF,+EAA+E;QAC/E,WAAW;QACX;QACE,4EAA4E;QAC5E,wCAAwC;QACxC,WAAW;aACR,2BAA2B,CAAC,IAAA,+BAAgB,EAAC,WAAW,CAAC,CAAC;aAC1D,QAAQ,CAAC,yBAAa,CAAC,IAAI,CAAC,EAC/B,CAAC;YACD,MAAM,IAAI,GAAG,uBAAO,CAAC,YAAY,CAAC;YAClC,MAAM,MAAM,GAAG,6BAAa,CAAC,IAAI,CAAC,CAAC,cAAwB,CAAC;YAC5D,MAAM,MAAM,GAAG,qCAAqC,CAAC;YACrD,8EAA8E;YAC9E,mGAAmG;YACnG,mFAAmF;YACnF,IAAI,IAAA,6BAAc,GAAE,IAAI,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;gBAChE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;YACD,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,MAAM,EAAE,CAAC;gBACnC,MAAM,IAAI,yBAAkB,CAC1B,4EAA4E,MAAM,0BAA0B,CAC7G,CAAC;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC;YACtD,IAAI,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,yBAAkB,CAC1B,iEAAiE,MAAM,iCAAiC,SAAS,EAAE,CACpH,CAAC;YACJ,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,GAAG,MAAM,IAAA,iBAAU,EAAC;YACxB,cAAc,EAAE,IAAA,+BAAgB,EAAC,WAAW,CAAC;YAC7C,YAAY,EAAE,IAAA,+BAAgB,EAAC,SAAS,CAAC;YACzC,mBAAmB,EAAE,IAAA,+BAAgB,EAAC,iBAAiB,CAAC;YACxD,UAAU,EAAE,IAAA,+BAAgB,EAAC,OAAO,CAAC;YACrC,cAAc,EAAE,IAAA,+BAAgB,EAAC,YAAY,CAAC;YAC9C,UAAU;YACV,UAAU,EAAE,IAAA,+BAAgB,EAAC,aAAa,CAAC;YAC3C,WAAW,EAAE,IAAA,+BAAgB,EAAC,QAAQ,CAAC;YACvC,kBAAkB,EAAE,qBAAqB,EAAE;YAC3C,wBAAwB,EAAE,IAAA,2CAA2B,GAAE;YACvD,4BAA4B;YAC5B,+CAA+C;YAC/C,oNAAoN;YACpN,8DAA8D;YAC9D,SAAS,EAAE,IAAA,+BAAgB,EAAC,OAAO,CAAC,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YACjE,iBAAiB,EACf,IAAA,+BAAgB,EAAC,qBAAqB,CAAC,IAAI,kCAA2B;YACxE,iBAAiB,EACf,IAAA,+BAAgB,EAAC,qBAAqB,CAAC,IAAI,kCAA2B;YACxE,UAAU,EAAE,aAAa;YACzB,OAAO,EAAE,IAAA,oCAAqB,GAAE;YAChC,MAAM;YACN,aAAa,EAAE,IAAA,0BAAmB,EAAC,kBAAkB,CAAC;YACtD,UAAU;YACV,aAAa,EAAE,aAAa;YAC5B,UAAU;YACV,QAAQ;YACR,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,IAAA,4BAAqB,EAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,cAAc,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,IAAA,gBAAS,EAAC,cAAc,CAAC,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9B,MAAM,gBAAgB,GAAG,MAAM,IAAA,sCAAsB,EACnD,0BAAU,CAAC,IAAI,EACf,KAAK,YAAY,yBAAkB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAC9D,SAAS,EACT,MAAM,EACN,MAAM,IAAA,qBAAc,EAAC,MAAM,CAAC,EAC5B,MAAM,EACN,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,KAAK,CACZ,CAAC;QACF,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAA,gCAAgB,EAAC,gBAAgB,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,wBAAsE,CAAC;IAC3E,IAAI,CAAC;QACH,IACE,MAAM,CAAC,sBAAsB,CAAC,mBAAmB;YAC/C,4CAAmB,CAAC,OAAO;YAC7B,MAAM,CAAC,sBAAsB,CAAC,yBAAyB,EACvD,CAAC;YACD,kEAAkE;YAClE,0EAA0E;YAC1E,wEAAwE;YACxE,yDAAyD;YACzD,qEAAqE;YACrE,EAAE;YACF,kEAAkE;YAClE,gEAAgE;YAChE,iEAAiE;YACjE,yEAAyE;YACzE,kBAAkB;YAClB,wBAAwB,GAAG,MAAM,IAAA,6DAAoC,EACnE,MAAM,EACN,MAAM,EACN,MAAM,CACP,CAAC;YACF,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAC9B,MAAM,CAAC,sBAAsB,CAAC,mBAAmB;oBAC/C,4CAAmB,CAAC,IAAI,CAAC;gBAC3B,MAAM,CAAC,IAAI,CACT,2CAA2C;oBACzC,sCAAsC,4CAAmB,CAAC,IAAI,GAAG,CACpE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IACE,MAAM,CAAC,sBAAsB,CAAC,mBAAmB;YACjD,4CAAmB,CAAC,OAAO,EAC3B,CAAC;YACD,IAAA,sCAA+B,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QACzD,CAAC;QAED,gDAAgD;QAChD,IAAI,yBAAyB,EAAE,CAAC;YAC9B,IAAA,2BAAa,EACX,MAAM;YACN,sFAAsF;YACtF,kDAAkD;YAClD,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EACnB,IAAA,4BAAc,EACZ,yCAAyC,EACzC,kCAAkC,EAClC;gBACE,UAAU,EAAE,yBAAyB;gBACrC,UAAU,EAAE;oBACV,eAAe,EAAE,KAAK;oBACtB,UAAU,EAAE,KAAK;oBACjB,SAAS,EAAE,IAAI;iBAChB;aACF,CACF,CACF,CAAC;QACJ,CAAC;QAED,mBAAmB;QACnB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,OAAO,CACV,6GAA6G,CAC9G,CAAC;QACJ,CAAC;QAED,IACE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,yBAAa,CAAC,KAAK,CAAC;YAC9C,OAAO,CAAC,QAAQ,KAAK,OAAO,EAC5B,CAAC;YACD,MAAM,CAAC,OAAO,CACZ,sHAAsH,CACvH,CAAC;QACJ,CAAC;QAED,IACE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,yBAAa,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,QAAQ,KAAK,OAAO,EAC5B,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAChD,MAAM,UAAU,GAAG,MAAM,IAAA,0BAAW,EAAC,YAAY,CAAC,CAAC;gBAEnD,gHAAgH;gBAChH,0GAA0G;gBAC1G,wGAAwG;gBACxG,4FAA4F;gBAC5F,IACE,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC;oBACxC,CAAC,CAAC,MAAM,MAAM,CAAC,eAAe,CAC5B,6BAAY,CAAC,qCAAqC,CACnD,CAAC,EACF,CAAC;oBACD,IAAI,CAAC;wBACH,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;wBAEzD,yDAAyD;wBACzD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B,IAAA,oCAAqB,GAAE,EACvB,0BAA0B,EAC1B,KAAK,CACN,CAAC;wBACF,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC/C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;wBAE1B,uEAAuE;wBACvE,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;wBACtD,EAAE,CAAC,aAAa,CACd,aAAa,EACb,uBAAuB,YAAY,OAAO,CAC3C,CAAC;wBACF,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;wBAEnC,2EAA2E;wBAC3E,sEAAsE;wBACtE,IAAI,CAAC,cAAc,CAAC,oBAAM,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;oBAChE,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,MAAM,CAAC,OAAO,CACZ,gGAAgG,CAAC,EAAE,CACpG,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,6GAA6G;oBAC7G,qBAAqB;oBACrB,IAAI,CAAC,cAAc,CAAC,oBAAM,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,CAAC,OAAO,CACZ,sDAAsD,CAAC,EAAE,CAC1D,CAAC;gBAEF,IAAI,CAAC,YAAY,mCAAoB,EAAE,CAAC;oBACtC,IAAA,2BAAa,EACX,MAAM,EACN,yBAAa,CAAC,EAAE,EAChB,IAAA,4BAAc,EACZ,sCAAsC,EACtC,8EAA8E,EAC9E;wBACE,eAAe,EACb,2IAA2I;wBAC7I,UAAU,EAAE;4BACV,UAAU,EAAE,IAAI;4BAChB,SAAS,EAAE,IAAI;4BACf,eAAe,EAAE,IAAI;yBACtB;wBACD,QAAQ,EAAE,SAAS;qBACpB,CACF,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,0FAA0F;QAC1F,0FAA0F;QAC1F,wFAAwF;QACxF,sFAAsF;QACtF,eAAe;QACf,IAAI,CAAC,cAAc,CACjB,YAAY,EACZ,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;YACvB,IAAA,yBAAkB,EAAC,IAAA,+BAAgB,EAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,CACjE,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,gBAAgB,EAChB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;YAC3B,IAAA,0BAAmB,EAAC,IAAA,+BAAgB,EAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,CACtE,CAAC;QAEF,+CAA+C;QAC/C,IAAI,MAAM,QAAQ,CAAC,QAAQ,CAAC,uBAAO,CAAC,4BAA4B,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC,cAAc,CAAC,4CAA4C,EAAE,MAAM,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,cAAc,GAClB,wDAAwD,CAAC;QAC3D,IACE,CAAC,MAAM,IAAA,2BAAoB,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC9C,CAAC,CAAC,MAAM,IAAA,2BAAoB,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,EAC/C,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,yBAAa,CAAC,GAAG,CAAC,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,mCAAmC,CAAC;YACnD,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CACT,wBAAwB,MAAM,gEAAgE,CAC/F,CAAC;YACJ,CAAC;iBAAM,IACL,qBAAqB,EAAE;gBACvB,CAAC,MAAM,IAAA,2BAAoB,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,EAC9C,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;gBACxD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;gBACzD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,yBAAa,CAAC,GAAG,CAAC,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,sCAAsC,CAAC;YACtD,MAAM,KAAK,GACT,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBACnB,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,uBAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;YAC9D,MAAM,CAAC,IAAI,CAAC,mCAAmC,KAAK,EAAE,CAAC,CAAC;YACxD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC;QAED,oGAAoG;QACpG,IACE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,yBAAa,CAAC,IAAI,CAAC;YAC7C,CAAC,CAAC,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,EACvC,CAAC;YACD,MAAM,IAAI,GAAG,uBAAO,CAAC,YAAY,CAAC;YAClC,MAAM,MAAM,GAAG,6BAAa,CAAC,IAAI,CAAC,CAAC,cAAwB,CAAC;YAC5D,MAAM,MAAM,GAAG,qCAAqC,CAAC;YACrD,8EAA8E;YAC9E,mGAAmG;YACnG,mFAAmF;YACnF,IAAI,IAAA,6BAAc,GAAE,IAAI,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;gBAChE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;YACD,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,MAAM,EAAE,CAAC;gBACnC,MAAM,IAAI,yBAAkB,CAC1B,4EAA4E,MAAM,0BAA0B,CAC7G,CAAC;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC;YACtD,IAAI,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,yBAAkB,CAC1B,iEAAiE,MAAM,iCAAiC,SAAS,EAAE,CACpH,CAAC;YACJ,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QACpD,CAAC;QAED,8CAA8C;QAC9C,IAAI,IAAA,kCAAkB,EAAC,MAAM,CAAC,wBAAwB,CAAC,EAAE,CAAC;YACxD,MAAM,IAAA,6CAAwB,EAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC3D,CAAC;QAED,8DAA8D;QAC9D,IAAI,MAAM,IAAA,2BAAoB,EAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;YACjD,kCAAkC;QACpC,CAAC;aAAM,CAAC;YACN,yEAAyE;YACzE,IAAI,CAAC,cAAc,CACjB,oDAAoD,EACpD,MAAM,CACP,CAAC;QACJ,CAAC;QAED,IAAI,IAAA,+BAAgB,EAAC,2BAA2B,CAAC,KAAK,SAAS,EAAE,CAAC;YAChE,MAAM,CAAC,OAAO,CACZ,6RAA6R,CAC9R,CAAC;QACJ,CAAC;QAED,IACE,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC;YACnE,SAAS,EACT,CAAC;YACD,MAAM,CAAC,OAAO,CACZ,uUAAuU,CACxU,CAAC;QACJ,CAAC;QAED,IACE,MAAM,MAAM,CAAC,eAAe,CAC1B,6BAAY,CAAC,iCAAiC,CAC/C,EACD,CAAC;YACD,IAAI,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,EAAE,CAAC;gBAC1D,MAAM,CAAC,KAAK,CACV,4FAA4F,CAC7F,CAAC;YACJ,CAAC;iBAAM,IACL,CAAC,CAAC,MAAM,QAAQ,CAAC,QAAQ,CACvB,uBAAO,CAAC,iCAAiC,EACzC,MAAM,CACP,CAAC,EACF,CAAC;gBACD,kEAAkE;gBAClE,uDAAuD;gBACvD,IAAI,CAAC,cAAc,CAAC,wCAAwC,EAAE,MAAM,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAA,cAAO,EAChC,MAAM,EACN,MAAM,EACN,UAAU,EACV,mBAAmB,EACnB,IAAA,+BAAgB,EAAC,YAAY,CAAC,EAC9B,UAAU,EACV,MAAM,CACP,CAAC;QACF,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5D,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QAED,6FAA6F;QAC7F,2BAA2B;QAC3B,IAAA,8BAAgB,EAAC,MAAM,CAAC,CAAC;QAEzB,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IACxE,CAAC;IAAC,OAAO,cAAc,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,IAAA,gBAAS,EAAC,cAAc,CAAC,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9B,MAAM,yBAAyB,CAC7B,SAAS,EACT,MAAM,EACN,SAAS,EAAE,yCAAyC;QACpD,yBAAyB,EACzB,sBAAsB,EACtB,WAAW,EACX,YAAY,EACZ,wBAAwB,EACxB,MAAM,EACN,KAAK,CACN,CAAC;QACF,OAAO;IACT,CAAC;YAAS,CAAC;QACT,IAAA,qCAAuB,GAAE,CAAC;IAC5B,CAAC;IACD,MAAM,yBAAyB,CAC7B,SAAS,EACT,MAAM,EACN,UAAU,EACV,yBAAyB,EACzB,sBAAsB,EACtB,WAAW,EACX,YAAY,EACZ,wBAAwB,EACxB,MAAM,CACP,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB;IAC5B,0DAA0D;IAC1D,MAAM,WAAW,GAAG,IAAA,+BAAgB,EAAC,cAAc,CAAC,CAAC;IACrD,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,WAAW,KAAK,MAAM,CAAC;IAE7D,6FAA6F;IAC7F,IAAI,CAAC,IAAA,qBAAc,GAAE;QAAE,OAAO,KAAK,CAAC;IAEpC,oDAAoD;IACpD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,MAA0B,EAC1B,gBAAkC;IAElC,IAAA,2BAAa,EACX,MAAM;IACN,sFAAsF;IACtF,kDAAkD;IAClD,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EACnB,IAAA,4BAAc,EACZ,iCAAiC,EACjC,wBAAwB,EACxB;QACE,UAAU,EAAE,gBAAgB;QAC5B,UAAU,EAAE;YACV,eAAe,EAAE,KAAK;YACtB,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,IAAI;SAChB;KACF,CACF,CACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,IAAI,CAAC;QACH,MAAM,GAAG,EAAE,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,SAAS,CAAC,uBAAuB,IAAA,sBAAe,EAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,IAAA,sBAAe,GAAE,CAAC;AAC1B,CAAC;AAED,KAAK,UAAU,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"init-action.js","sourceRoot":"","sources":["../src/init-action.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/init.js b/lib/init.js index fef6a9fde4..eb39598460 100644 --- a/lib/init.js +++ b/lib/init.js @@ -35,19 +35,20 @@ var __importStar = (this && this.__importStar) || (function () { Object.defineProperty(exports, "__esModule", { value: true }); exports.initCodeQL = initCodeQL; exports.initConfig = initConfig; -exports.runInit = runInit; +exports.runDatabaseInitCluster = runDatabaseInitCluster; +exports.checkPacksForOverlayCompatibility = checkPacksForOverlayCompatibility; exports.checkInstallPython311 = checkInstallPython311; exports.cleanupDatabaseClusterDirectory = cleanupDatabaseClusterDirectory; const fs = __importStar(require("fs")); const path = __importStar(require("path")); const toolrunner = __importStar(require("@actions/exec/lib/toolrunner")); const io = __importStar(require("@actions/io")); +const yaml = __importStar(require("js-yaml")); const actions_util_1 = require("./actions-util"); const codeql_1 = require("./codeql"); const configUtils = __importStar(require("./config-utils")); const languages_1 = require("./languages"); const logging_1 = require("./logging"); -const tracer_config_1 = require("./tracer-config"); const util = __importStar(require("./util")); async function initCodeQL(toolsInput, apiDetails, tempDir, variant, defaultCliVersion, features, logger) { logger.startGroup("Setup CodeQL tools"); @@ -67,16 +68,86 @@ async function initConfig(inputs) { return await configUtils.initConfig(inputs); }); } -async function runInit(codeql, config, sourceRoot, processName, registriesInput, apiDetails, logger) { +async function runDatabaseInitCluster(databaseInitEnvironment, codeql, config, sourceRoot, processName, qlconfigFile, logger) { fs.mkdirSync(config.dbLocation, { recursive: true }); - const { registriesAuthTokens, qlconfigFile } = await configUtils.generateRegistries(registriesInput, config.tempDir, logger); - await configUtils.wrapEnvironment({ - GITHUB_TOKEN: apiDetails.auth, - CODEQL_REGISTRIES_AUTH: registriesAuthTokens, - }, - // Init a database cluster - async () => await codeql.databaseInitCluster(config, sourceRoot, processName, qlconfigFile, logger)); - return await (0, tracer_config_1.getCombinedTracerConfig)(codeql, config); + await configUtils.wrapEnvironment(databaseInitEnvironment, async () => await codeql.databaseInitCluster(config, sourceRoot, processName, qlconfigFile, logger)); +} +/** + * Check whether all query packs are compatible with the overlay analysis + * support in the CodeQL CLI. If the check fails, this function will log a + * warning and returns false. + * + * @param codeql A CodeQL instance. + * @param logger A logger. + * @returns `true` if all query packs are compatible with overlay analysis, + * `false` otherwise. + */ +async function checkPacksForOverlayCompatibility(codeql, config, logger) { + const codeQlOverlayVersion = (await codeql.getVersion()).overlayVersion; + if (codeQlOverlayVersion === undefined) { + logger.warning("The CodeQL CLI does not support overlay analysis."); + return false; + } + for (const language of config.languages) { + const suitePath = util.getGeneratedSuitePath(config, language); + const packDirs = await codeql.resolveQueriesStartingPacks([suitePath]); + if (packDirs.some((packDir) => !checkPackForOverlayCompatibility(packDir, codeQlOverlayVersion, logger))) { + return false; + } + } + return true; +} +/** + * Check a single pack for its overlay compatibility. If the check fails, this + * function will log a warning and returns false. + * + * @param packDir Path to the directory containing the pack. + * @param codeQlOverlayVersion The overlay version of the CodeQL CLI. + * @param logger A logger. + * @returns `true` if the pack is compatible with overlay analysis, `false` + * otherwise. + */ +function checkPackForOverlayCompatibility(packDir, codeQlOverlayVersion, logger) { + try { + let qlpackPath = path.join(packDir, "qlpack.yml"); + if (!fs.existsSync(qlpackPath)) { + qlpackPath = path.join(packDir, "codeql-pack.yml"); + } + const qlpackContents = yaml.load(fs.readFileSync(qlpackPath, "utf8")); + if (!qlpackContents.buildMetadata) { + // This is a source-only pack, and overlay compatibility checks apply only + // to precompiled packs. + return true; + } + const packInfoPath = path.join(packDir, ".packinfo"); + if (!fs.existsSync(packInfoPath)) { + logger.warning(`The query pack at ${packDir} does not have a .packinfo file, ` + + "so it cannot support overlay analysis. Recompiling the query pack " + + "with the latest CodeQL CLI should solve this problem."); + return false; + } + const packInfoFileContents = JSON.parse(fs.readFileSync(packInfoPath, "utf8")); + const packOverlayVersion = packInfoFileContents.overlayVersion; + if (typeof packOverlayVersion !== "number") { + logger.warning(`The .packinfo file for the query pack at ${packDir} ` + + "does not have the overlayVersion field, which indicates that " + + "the pack is not compatible with overlay analysis."); + return false; + } + if (packOverlayVersion !== codeQlOverlayVersion) { + logger.warning(`The query pack at ${packDir} was compiled with ` + + `overlay version ${packOverlayVersion}, but the CodeQL CLI ` + + `supports overlay version ${codeQlOverlayVersion}. The ` + + "query pack needs to be recompiled to support overlay analysis."); + return false; + } + } + catch (e) { + logger.warning(`Error while checking pack at ${packDir} ` + + `for overlay compatibility: ${util.getErrorMessage(e)}`); + return false; + } + return true; } /** * If we are running python 3.12+ on windows, we need to switch to python 3.11. @@ -92,14 +163,16 @@ async function checkInstallPython311(languages, codeql) { ]).exec(); } } -function cleanupDatabaseClusterDirectory(config, logger, +function cleanupDatabaseClusterDirectory(config, logger, options = {}, // We can't stub the fs module in tests, so we allow the caller to override the rmSync function // for testing. rmSync = fs.rmSync) { if (fs.existsSync(config.dbLocation) && (fs.statSync(config.dbLocation).isFile() || fs.readdirSync(config.dbLocation).length > 0)) { - logger.warning(`The database cluster directory ${config.dbLocation} must be empty. Attempting to clean it up.`); + if (!options.disableExistingDirectoryWarning) { + logger.warning(`The database cluster directory ${config.dbLocation} must be empty. Attempting to clean it up.`); + } try { rmSync(config.dbLocation, { force: true, diff --git a/lib/init.js.map b/lib/init.js.map index 828f6a8804..6a2d98a997 100644 --- a/lib/init.js.map +++ b/lib/init.js.map @@ -1 +1 @@ -{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/init.test.js b/lib/init.test.js index b95dc5cc91..fb09323559 100644 --- a/lib/init.test.js +++ b/lib/init.test.js @@ -39,7 +39,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); const fs = __importStar(require("fs")); const path_1 = __importDefault(require("path")); const ava_1 = __importDefault(require("ava")); +const codeql_1 = require("./codeql"); const init_1 = require("./init"); +const languages_1 = require("./languages"); const testing_utils_1 = require("./testing-utils"); const util_1 = require("./util"); (0, testing_utils_1.setupTests)(ava_1.default); @@ -88,7 +90,7 @@ for (const { runnerEnv, ErrorConstructor, message } of [ fs.writeFileSync(fileToCleanUp, ""); const rmSyncError = `Failed to clean up file ${fileToCleanUp}`; const messages = []; - t.throws(() => (0, init_1.cleanupDatabaseClusterDirectory)((0, testing_utils_1.createTestConfig)({ dbLocation }), (0, testing_utils_1.getRecordingLogger)(messages), () => { + t.throws(() => (0, init_1.cleanupDatabaseClusterDirectory)((0, testing_utils_1.createTestConfig)({ dbLocation }), (0, testing_utils_1.getRecordingLogger)(messages), {}, () => { throw new Error(rmSyncError); }), { instanceOf: ErrorConstructor, @@ -100,4 +102,218 @@ for (const { runnerEnv, ErrorConstructor, message } of [ }); }); } +(0, ava_1.default)("cleanupDatabaseClusterDirectory can disable warning with options", async (t) => { + await (0, util_1.withTmpDir)(async (tmpDir) => { + const dbLocation = path_1.default.resolve(tmpDir, "dbs"); + fs.mkdirSync(dbLocation, { recursive: true }); + const fileToCleanUp = path_1.default.resolve(dbLocation, "something-to-cleanup.txt"); + fs.writeFileSync(fileToCleanUp, ""); + const messages = []; + (0, init_1.cleanupDatabaseClusterDirectory)((0, testing_utils_1.createTestConfig)({ dbLocation }), (0, testing_utils_1.getRecordingLogger)(messages), { disableExistingDirectoryWarning: true }); + // Should only have the info message, not the warning + t.is(messages.length, 1); + t.is(messages[0].type, "info"); + t.is(messages[0].message, `Cleaned up database cluster directory ${dbLocation}.`); + t.false(fs.existsSync(fileToCleanUp)); + }); +}); +const testCheckPacksForOverlayCompatibility = ava_1.default.macro({ + exec: async (t, _title, { cliOverlayVersion, languages, packs, expectedResult, }) => { + await (0, util_1.withTmpDir)(async (tmpDir) => { + const packDirsByLanguage = new Map(); + for (const [packName, packInfo] of Object.entries(packs)) { + const packPath = path_1.default.join(tmpDir, packName); + fs.mkdirSync(packPath, { recursive: true }); + if (packInfo.packinfoContents) { + fs.writeFileSync(path_1.default.join(packPath, ".packinfo"), packInfo.packinfoContents); + } + const qlpackFileName = packInfo.qlpackFileName || "qlpack.yml"; + fs.writeFileSync(path_1.default.join(packPath, qlpackFileName), packInfo.sourceOnlyPack + ? `name: ${packName}\nversion: 1.0.0\n` + : `name: ${packName}\nversion: 1.0.0\nbuildMetadata:\n sha: 123abc\n`); + if (!packDirsByLanguage.has(packInfo.language)) { + packDirsByLanguage.set(packInfo.language, []); + } + packDirsByLanguage.get(packInfo.language).push(packPath); + } + const codeql = (0, codeql_1.createStubCodeQL)({ + getVersion: async () => ({ + version: "2.22.2", + overlayVersion: cliOverlayVersion, + }), + resolveQueriesStartingPacks: async (suitePaths) => { + for (const language of packDirsByLanguage.keys()) { + const suiteForLanguage = path_1.default.join(language, "temp", "config-queries.qls"); + if (suitePaths[0].endsWith(suiteForLanguage)) { + return packDirsByLanguage.get(language) || []; + } + } + return []; + }, + }); + const messages = []; + const result = await (0, init_1.checkPacksForOverlayCompatibility)(codeql, (0, testing_utils_1.createTestConfig)({ dbLocation: tmpDir, languages }), (0, testing_utils_1.getRecordingLogger)(messages)); + t.is(result, expectedResult); + t.deepEqual(messages.length, expectedResult ? 0 : 1, "Expected log messages"); + }); + }, + title: (_, title) => `checkPacksForOverlayCompatibility: ${title}`, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns false when CLI does not support overlay", { + cliOverlayVersion: undefined, + languages: [languages_1.KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: false, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns true when there are no query packs", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.java], + packs: {}, + expectedResult: true, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns true when query pack has not been compiled", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: undefined, + sourceOnlyPack: true, + }, + }, + expectedResult: true, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns true when query pack has expected overlay version", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: true, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns true when query packs for all languages to analyze are compatible", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.cpp, languages_1.KnownLanguage.java], + packs: { + "codeql/cpp-queries": { + language: languages_1.KnownLanguage.cpp, + packinfoContents: '{"overlayVersion":2}', + }, + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: true, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns true when query pack for a language not analyzed is incompatible", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.java], + packs: { + "codeql/cpp-queries": { + language: languages_1.KnownLanguage.cpp, + packinfoContents: undefined, + }, + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: true, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns false when query pack for a language to analyze is incompatible", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.cpp, languages_1.KnownLanguage.java], + packs: { + "codeql/cpp-queries": { + language: languages_1.KnownLanguage.cpp, + packinfoContents: '{"overlayVersion":1}', + }, + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + }, + expectedResult: false, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns false when query pack is missing .packinfo", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + "custom/queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: undefined, + }, + }, + expectedResult: false, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns false when query pack has different overlay version", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + "custom/queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":1}', + }, + }, + expectedResult: false, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns false when query pack is missing overlayVersion in .packinfo", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + "custom/queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: "{}", + }, + }, + expectedResult: false, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns false when .packinfo is not valid JSON", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + }, + "custom/queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: "this_is_not_valid_json", + }, + }, + expectedResult: false, +}); +(0, ava_1.default)(testCheckPacksForOverlayCompatibility, "returns true when query pack uses codeql-pack.yml filename", { + cliOverlayVersion: 2, + languages: [languages_1.KnownLanguage.java], + packs: { + "codeql/java-queries": { + language: languages_1.KnownLanguage.java, + packinfoContents: '{"overlayVersion":2}', + qlpackFileName: "codeql-pack.yml", + }, + }, + expectedResult: true, +}); //# sourceMappingURL=init.test.js.map \ No newline at end of file diff --git a/lib/init.test.js.map b/lib/init.test.js.map index 8bd2cc140e..adbc2a354b 100644 --- a/lib/init.test.js.map +++ b/lib/init.test.js.map @@ -1 +1 @@ -{"version":3,"file":"init.test.js","sourceRoot":"","sources":["../src/init.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"init.test.js","sourceRoot":"","sources":["../src/init.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,gDAAwB;AAExB,8CAA6C;AAE7C,qCAA4C;AAC5C,iCAGgB;AAChB,2CAA4C;AAC5C,mDAKyB;AACzB,iCAAwD;AAExD,IAAA,0BAAU,EAAC,aAAI,CAAC,CAAC;AAEjB,IAAA,aAAI,EAAC,0DAA0D,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC3E,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAc,EAAE,EAAE;QACxC,MAAM,UAAU,GAAG,cAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE9C,MAAM,aAAa,GAAG,cAAI,CAAC,OAAO,CAAC,UAAU,EAAE,0BAA0B,CAAC,CAAC;QAC3E,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QAEpC,MAAM,QAAQ,GAAoB,EAAE,CAAC;QACrC,IAAA,sCAA+B,EAC7B,IAAA,gCAAgB,EAAC,EAAE,UAAU,EAAE,CAAC,EAChC,IAAA,kCAAkB,EAAC,QAAQ,CAAC,CAC7B,CAAC;QAEF,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACzB,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAClC,CAAC,CAAC,EAAE,CACF,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EACnB,kCAAkC,UAAU,4CAA4C,CACzF,CAAC;QACF,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,EAAE,CACF,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EACnB,yCAAyC,UAAU,GAAG,CACvD,CAAC;QAEF,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,KAAK,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,IAAI;IACrD;QACE,SAAS,EAAE,aAAa;QACxB,gBAAgB,EAAE,yBAAkB;QACpC,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,CACtB,8FAA8F;YAC9F,MAAM,UAAU,8EAA8E;YAC9F,0FAA0F;YAC1F,6FAA6F;YAC7F,8CAA8C;KACjD;IACD;QACE,SAAS,EAAE,eAAe;QAC1B,gBAAgB,EAAE,KAAK;QACvB,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,CACtB,8FAA8F;YAC9F,MAAM,UAAU,8EAA8E;YAC9F,wFAAwF;YACxF,4FAA4F;YAC5F,2CAA2C;KAC9C;CACF,EAAE,CAAC;IACF,IAAA,aAAI,EAAC,4CAA4C,gBAAgB,CAAC,IAAI,0BAA0B,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9H,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAc,EAAE,EAAE;YACxC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;YAE9C,MAAM,UAAU,GAAG,cAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC/C,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE9C,MAAM,aAAa,GAAG,cAAI,CAAC,OAAO,CAChC,UAAU,EACV,0BAA0B,CAC3B,CAAC;YACF,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YAEpC,MAAM,WAAW,GAAG,2BAA2B,aAAa,EAAE,CAAC;YAE/D,MAAM,QAAQ,GAAoB,EAAE,CAAC;YACrC,CAAC,CAAC,MAAM,CACN,GAAG,EAAE,CACH,IAAA,sCAA+B,EAC7B,IAAA,gCAAgB,EAAC,EAAE,UAAU,EAAE,CAAC,EAChC,IAAA,kCAAkB,EAAC,QAAQ,CAAC,EAC5B,EAAE,EACF,GAAG,EAAE;gBACH,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;YAC/B,CAAC,CACF,EACH;gBACE,UAAU,EAAE,gBAAgB;gBAC5B,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,WAAW,EAAE;aAC1D,CACF,CAAC;YAEF,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACzB,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAClC,CAAC,CAAC,EAAE,CACF,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EACnB,kCAAkC,UAAU,4CAA4C,CACzF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAA,aAAI,EAAC,kEAAkE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACnF,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAc,EAAE,EAAE;QACxC,MAAM,UAAU,GAAG,cAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE9C,MAAM,aAAa,GAAG,cAAI,CAAC,OAAO,CAAC,UAAU,EAAE,0BAA0B,CAAC,CAAC;QAC3E,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QAEpC,MAAM,QAAQ,GAAoB,EAAE,CAAC;QACrC,IAAA,sCAA+B,EAC7B,IAAA,gCAAgB,EAAC,EAAE,UAAU,EAAE,CAAC,EAChC,IAAA,kCAAkB,EAAC,QAAQ,CAAC,EAC5B,EAAE,+BAA+B,EAAE,IAAI,EAAE,CAC1C,CAAC;QAEF,qDAAqD;QACrD,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACzB,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,EAAE,CACF,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EACnB,yCAAyC,UAAU,GAAG,CACvD,CAAC;QAEF,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AASH,MAAM,qCAAqC,GAAG,aAAI,CAAC,KAAK,CAAC;IACvD,IAAI,EAAE,KAAK,EACT,CAAmB,EACnB,MAAc,EACd,EACE,iBAAiB,EACjB,SAAS,EACT,KAAK,EACL,cAAc,GAMf,EACD,EAAE;QACF,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChC,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAA2B,CAAC;YAE9D,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzD,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC7C,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC5C,IAAI,QAAQ,CAAC,gBAAgB,EAAE,CAAC;oBAC9B,EAAE,CAAC,aAAa,CACd,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,EAChC,QAAQ,CAAC,gBAAgB,CAC1B,CAAC;gBACJ,CAAC;gBACD,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,IAAI,YAAY,CAAC;gBAC/D,EAAE,CAAC,aAAa,CACd,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,EACnC,QAAQ,CAAC,cAAc;oBACrB,CAAC,CAAC,SAAS,QAAQ,oBAAoB;oBACvC,CAAC,CAAC,SAAS,QAAQ,kDAAkD,CACxE,CAAC;gBAEF,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/C,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAChD,CAAC;gBACD,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC5D,CAAC;YAED,MAAM,MAAM,GAAG,IAAA,yBAAgB,EAAC;gBAC9B,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;oBACvB,OAAO,EAAE,QAAQ;oBACjB,cAAc,EAAE,iBAAiB;iBAClC,CAAC;gBACF,2BAA2B,EAAE,KAAK,EAAE,UAAoB,EAAE,EAAE;oBAC1D,KAAK,MAAM,QAAQ,IAAI,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC;wBACjD,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAChC,QAAQ,EACR,MAAM,EACN,oBAAoB,CACrB,CAAC;wBACF,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;4BAC7C,OAAO,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;wBAChD,CAAC;oBACH,CAAC;oBACD,OAAO,EAAE,CAAC;gBACZ,CAAC;aACF,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAoB,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,IAAA,wCAAiC,EACpD,MAAM,EACN,IAAA,gCAAgB,EAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EACnD,IAAA,kCAAkB,EAAC,QAAQ,CAAC,CAC7B,CAAC;YACF,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAC7B,CAAC,CAAC,SAAS,CACT,QAAQ,CAAC,MAAM,EACf,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACtB,uBAAuB,CACxB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IACD,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,sCAAsC,KAAK,EAAE;CACnE,CAAC,CAAC;AAEH,IAAA,aAAI,EACF,qCAAqC,EACrC,iDAAiD,EACjD;IACE,iBAAiB,EAAE,SAAS;IAC5B,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE;QACL,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;KACF;IACD,cAAc,EAAE,KAAK;CACtB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,4CAA4C,EAC5C;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE,EAAE;IACT,cAAc,EAAE,IAAI;CACrB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,oDAAoD,EACpD;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE;QACL,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,SAAS;YAC3B,cAAc,EAAE,IAAI;SACrB;KACF;IACD,cAAc,EAAE,IAAI;CACrB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,2DAA2D,EAC3D;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE;QACL,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;KACF;IACD,cAAc,EAAE,IAAI;CACrB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,2EAA2E,EAC3E;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,GAAG,EAAE,yBAAa,CAAC,IAAI,CAAC;IAClD,KAAK,EAAE;QACL,oBAAoB,EAAE;YACpB,QAAQ,EAAE,yBAAa,CAAC,GAAG;YAC3B,gBAAgB,EAAE,sBAAsB;SACzC;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;KACF;IACD,cAAc,EAAE,IAAI;CACrB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,0EAA0E,EAC1E;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE;QACL,oBAAoB,EAAE;YACpB,QAAQ,EAAE,yBAAa,CAAC,GAAG;YAC3B,gBAAgB,EAAE,SAAS;SAC5B;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;KACF;IACD,cAAc,EAAE,IAAI;CACrB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,yEAAyE,EACzE;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,GAAG,EAAE,yBAAa,CAAC,IAAI,CAAC;IAClD,KAAK,EAAE;QACL,oBAAoB,EAAE;YACpB,QAAQ,EAAE,yBAAa,CAAC,GAAG;YAC3B,gBAAgB,EAAE,sBAAsB;SACzC;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;KACF;IACD,cAAc,EAAE,KAAK;CACtB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,oDAAoD,EACpD;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE;QACL,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;QACD,gBAAgB,EAAE;YAChB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,SAAS;SAC5B;KACF;IACD,cAAc,EAAE,KAAK;CACtB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,6DAA6D,EAC7D;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE;QACL,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;QACD,gBAAgB,EAAE;YAChB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;KACF;IACD,cAAc,EAAE,KAAK;CACtB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,sEAAsE,EACtE;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE;QACL,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;QACD,gBAAgB,EAAE;YAChB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,IAAI;SACvB;KACF;IACD,cAAc,EAAE,KAAK;CACtB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,gDAAgD,EAChD;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE;QACL,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;SACzC;QACD,gBAAgB,EAAE;YAChB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,wBAAwB;SAC3C;KACF;IACD,cAAc,EAAE,KAAK;CACtB,CACF,CAAC;AAEF,IAAA,aAAI,EACF,qCAAqC,EACrC,4DAA4D,EAC5D;IACE,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC,yBAAa,CAAC,IAAI,CAAC;IAC/B,KAAK,EAAE;QACL,qBAAqB,EAAE;YACrB,QAAQ,EAAE,yBAAa,CAAC,IAAI;YAC5B,gBAAgB,EAAE,sBAAsB;YACxC,cAAc,EAAE,iBAAiB;SAClC;KACF;IACD,cAAc,EAAE,IAAI;CACrB,CACF,CAAC"} \ No newline at end of file diff --git a/lib/overlay-database-utils.js b/lib/overlay-database-utils.js index 089669e77b..62ca704efc 100644 --- a/lib/overlay-database-utils.js +++ b/lib/overlay-database-utils.js @@ -52,7 +52,7 @@ var OverlayDatabaseMode; OverlayDatabaseMode["OverlayBase"] = "overlay-base"; OverlayDatabaseMode["None"] = "none"; })(OverlayDatabaseMode || (exports.OverlayDatabaseMode = OverlayDatabaseMode = {})); -exports.CODEQL_OVERLAY_MINIMUM_VERSION = "2.20.5"; +exports.CODEQL_OVERLAY_MINIMUM_VERSION = "2.22.3"; /** * Writes a JSON file containing Git OIDs for all tracked files (represented * by path relative to the source root) under the source root. The file is diff --git a/lib/testing-utils.js b/lib/testing-utils.js index 7213d5bf42..01ba008e86 100644 --- a/lib/testing-utils.js +++ b/lib/testing-utils.js @@ -227,15 +227,16 @@ function mockLanguagesInRepo(languages) { /** * Constructs a `VersionInfo` object for testing purposes only. */ -const makeVersionInfo = (version, features) => ({ +const makeVersionInfo = (version, features, overlayVersion) => ({ version, features, + overlayVersion, }); exports.makeVersionInfo = makeVersionInfo; -function mockCodeQLVersion(version, features) { +function mockCodeQLVersion(version, features, overlayVersion) { return codeql.createStubCodeQL({ async getVersion() { - return (0, exports.makeVersionInfo)(version, features); + return (0, exports.makeVersionInfo)(version, features, overlayVersion); }, }); } diff --git a/lib/testing-utils.js.map b/lib/testing-utils.js.map index 9b2b173b0d..fd7c491b9b 100644 --- a/lib/testing-utils.js.map +++ b/lib/testing-utils.js.map @@ -1 +1 @@ -{"version":3,"file":"testing-utils.js","sourceRoot":"","sources":["../src/testing-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"testing-utils.js","sourceRoot":"","sources":["../src/testing-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/util.js b/lib/util.js index db63aed58c..1d7b026612 100644 --- a/lib/util.js +++ b/lib/util.js @@ -48,6 +48,7 @@ exports.getThreadsFlagValue = getThreadsFlagValue; exports.getCgroupCpuCountFromCpus = getCgroupCpuCountFromCpus; exports.getThreadsFlag = getThreadsFlag; exports.getCodeQLDatabasePath = getCodeQLDatabasePath; +exports.getGeneratedSuitePath = getGeneratedSuitePath; exports.parseGitHubUrl = parseGitHubUrl; exports.checkGitHubVersionInRange = checkGitHubVersionInRange; exports.apiVersionInRange = apiVersionInRange; @@ -403,6 +404,12 @@ function getThreadsFlag(userInput, logger) { function getCodeQLDatabasePath(config, language) { return path.resolve(config.dbLocation, language); } +/** + * Get the path where the generated query suite for the given language lives. + */ +function getGeneratedSuitePath(config, language) { + return path.resolve(config.dbLocation, language, "temp", "config-queries.qls"); +} /** * Parses user input of a github.com or GHES URL to a canonical form. * Removes any API prefix or suffix if one is present. diff --git a/lib/util.js.map b/lib/util.js.map index 340145df21..4522c2b337 100644 --- a/lib/util.js.map +++ b/lib/util.js.map @@ -1 +1 @@ -{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"} \ No newline at end of file