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 00000000000..21b5822bf5d --- /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 62ced7fe4e5..a42bd3b9ed7 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(); }