Skip to content

Commit f29462d

Browse files
committed
Overlay: use overlay-base CodeQL version
1 parent 1b32ed3 commit f29462d

File tree

1 file changed

+41
-5
lines changed

1 file changed

+41
-5
lines changed

src/init-action.ts

Lines changed: 41 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ import { KnownLanguage } from "./languages";
4545
import { getActionsLogger, Logger, withGroupAsync } from "./logging";
4646
import {
4747
downloadOverlayBaseDatabaseFromCache,
48+
getCodeQLVersionFromOverlayBaseDatabase,
4849
OverlayBaseDatabaseDownloadStats,
4950
OverlayDatabaseMode,
5051
} from "./overlay-database-utils";
@@ -267,14 +268,49 @@ async function run() {
267268
};
268269
configUtils.amendInputConfigFile(inputs, logger);
269270

270-
await withGroupAsync(
271-
"Compute preliminary overlay database mode",
272-
async () => configUtils.getPreliminaryOverlayDatabaseMode(inputs),
273-
);
274-
275271
const codeQLDefaultVersionInfo = await features.getDefaultCliVersion(
276272
gitHubVersion.type,
277273
);
274+
275+
await withGroupAsync(
276+
"Compute CodeQL version to use for overlay analysis",
277+
async () => {
278+
if (getOptionalInput("tools")) {
279+
logger.info(
280+
"Nothing to do here because the workflow specified a tools input.",
281+
);
282+
return;
283+
}
284+
285+
const { overlayDatabaseMode, useOverlayDatabaseCaching } =
286+
await configUtils.getPreliminaryOverlayDatabaseMode(inputs);
287+
if (overlayDatabaseMode !== OverlayDatabaseMode.Overlay) {
288+
logger.info(
289+
"Nothing do to here because we are not performing overlay analysis",
290+
);
291+
return;
292+
}
293+
if (!useOverlayDatabaseCaching) {
294+
logger.info(
295+
`Nothing to do here because we are not using overlay database caching`,
296+
);
297+
return;
298+
}
299+
300+
const codeQlVersionForOverlay =
301+
await getCodeQLVersionFromOverlayBaseDatabase(logger);
302+
if (codeQlVersionForOverlay === undefined) {
303+
return;
304+
}
305+
306+
logger.info(
307+
`Using CodeQL version ${codeQlVersionForOverlay} for overlay analysis.`,
308+
);
309+
codeQLDefaultVersionInfo.cliVersion = codeQlVersionForOverlay;
310+
codeQLDefaultVersionInfo.tagName = `codeql-bundle-v${codeQlVersionForOverlay}`;
311+
},
312+
);
313+
278314
toolsFeatureFlagsValid = codeQLDefaultVersionInfo.toolsFeatureFlagsValid;
279315
const initCodeQLResult = await initCodeQL(
280316
getOptionalInput("tools"),

0 commit comments

Comments
 (0)