Skip to content

Commit 4f84376

Browse files
committed
Make monitor trigger autodownload of result when a new repo is scanned
This introduces a new `autoDownloadVariantAnalysisResult` command which will be called by the VariantAnalysisMonitor every time it detects a new repo has been scanned. In turn, this will use the `autoDownloadVariantAnalysisResult` method which we defined in an earlier commit on the VariantAnalysisManager.
1 parent 5e76c08 commit 4f84376

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

extensions/ql-vscode/src/extension.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,10 @@ import { LegacyQueryRunner } from './legacy-query-server/legacyRunner';
106106
import { QueryRunner } from './queryRunner';
107107
import { VariantAnalysisView } from './remote-queries/variant-analysis-view';
108108
import { VariantAnalysis } from './remote-queries/shared/variant-analysis';
109+
import {
110+
VariantAnalysis as VariantAnalysisApiResponse,
111+
VariantAnalysisScannedRepository as ApiVariantAnalysisScannedRepository
112+
} from './remote-queries/gh-api/variant-analysis';
109113
import { VariantAnalysisManager } from './remote-queries/variant-analysis-manager';
110114

111115
/**
@@ -906,6 +910,16 @@ async function activateWithInstalledDistribution(
906910
})
907911
);
908912

913+
ctx.subscriptions.push(
914+
commandRunner('codeQL.autoDownloadVariantAnalysisResult', async (
915+
scannedRepo: ApiVariantAnalysisScannedRepository,
916+
variantAnalysisSummary: VariantAnalysisApiResponse,
917+
token: CancellationToken
918+
) => {
919+
await variantAnalysisManager.autoDownloadVariantAnalysisResult(scannedRepo, variantAnalysisSummary, token);
920+
})
921+
);
922+
909923
ctx.subscriptions.push(
910924
commandRunner('codeQL.autoDownloadRemoteQueryResults', async (
911925
queryResult: RemoteQueryResult,

extensions/ql-vscode/src/remote-queries/variant-analysis-monitor.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ExtensionContext, CancellationToken } from 'vscode';
1+
import { ExtensionContext, CancellationToken, commands } from 'vscode';
22
import { Credentials } from '../authentication';
33
import { Logger } from '../logging';
44
import * as ghApiClient from './gh-api/gh-api-client';
@@ -64,6 +64,7 @@ export class VariantAnalysisMonitor {
6464
if (variantAnalysisSummary.scanned_repositories) {
6565
variantAnalysisSummary.scanned_repositories.forEach(scannedRepo => {
6666
if (!scannedReposDownloaded.includes(scannedRepo.repository.id) && scannedRepo.analysis_status === 'succeeded') {
67+
void commands.executeCommand('codeQL.autoDownloadVariantAnalysisResult', scannedRepo);
6768
scannedReposDownloaded.push(scannedRepo.repository.id);
6869
}
6970
});

0 commit comments

Comments
 (0)