From 28aadb183b4b39282193c619a07ff8d11c30dba8 Mon Sep 17 00:00:00 2001 From: Charis Kyriakou Date: Mon, 22 Jan 2024 13:59:41 +0000 Subject: [PATCH] Use object for pack generation details (#3260) --- .../ql-vscode/src/variant-analysis/ql-pack-details.ts | 7 +++++++ .../src/variant-analysis/run-remote-query.ts | 11 +++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 extensions/ql-vscode/src/variant-analysis/ql-pack-details.ts diff --git a/extensions/ql-vscode/src/variant-analysis/ql-pack-details.ts b/extensions/ql-vscode/src/variant-analysis/ql-pack-details.ts new file mode 100644 index 000000000..21b5822bf --- /dev/null +++ b/extensions/ql-vscode/src/variant-analysis/ql-pack-details.ts @@ -0,0 +1,7 @@ +/** + * Details about the original QL pack that is used for triggering + * a variant analysis. + */ +export interface QlPackDetails { + queryFile: string; +} diff --git a/extensions/ql-vscode/src/variant-analysis/run-remote-query.ts b/extensions/ql-vscode/src/variant-analysis/run-remote-query.ts index 62ced7fe4..a42bd3b9e 100644 --- a/extensions/ql-vscode/src/variant-analysis/run-remote-query.ts +++ b/extensions/ql-vscode/src/variant-analysis/run-remote-query.ts @@ -39,6 +39,7 @@ import { tryGetQueryMetadata } from "../codeql-cli/query-metadata"; import { askForLanguage, findLanguage } from "../codeql-cli/query-language"; import type { QlPackFile } from "../packaging/qlpack-file"; import { expandShortPaths } from "../common/short-paths"; +import type { QlPackDetails } from "./ql-pack-details"; /** * Well-known names for the query pack used by the server. @@ -59,9 +60,11 @@ interface GeneratedQueryPack { */ async function generateQueryPack( cliServer: CodeQLCliServer, - queryFile: string, + qlPackDetails: QlPackDetails, tmpDir: RemoteQueryTempDir, ): Promise { + const queryFile = qlPackDetails.queryFile; + const originalPackRoot = await findPackRoot(queryFile); const packRelativePath = relative(originalPackRoot, queryFile); const workspaceFolders = getOnDiskWorkspaceFolders(); @@ -381,8 +384,12 @@ export async function prepareRemoteQueryRun( let pack: GeneratedQueryPack; + const qlPackDetails: QlPackDetails = { + queryFile, + }; + try { - pack = await generateQueryPack(cliServer, queryFile, tempDir); + pack = await generateQueryPack(cliServer, qlPackDetails, tempDir); } finally { await tempDir.remoteQueryDir.cleanup(); }