Skip to content

Commit f8367fb

Browse files
committed
Set and cache dependency directory for Java build-mode: none
1 parent dc49dca commit f8367fb

6 files changed

+28
-2
lines changed

lib/analyze.js

+5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/analyze.js.map

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/dependency-caching.js

+7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/dependency-caching.js.map

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/analyze.ts

+7
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { getApiClient } from "./api-client";
1111
import { setupCppAutobuild } from "./autobuild";
1212
import { CodeQL, getCodeQL } from "./codeql";
1313
import * as configUtils from "./config-utils";
14+
import { getJavaDependencyDir } from "./dependency-caching";
1415
import { addDiagnostic, makeDiagnostic } from "./diagnostics";
1516
import {
1617
DiffThunkRange,
@@ -166,6 +167,12 @@ export async function runExtraction(
166167
) {
167168
await setupCppAutobuild(codeql, logger);
168169
}
170+
171+
if (language === Language.java && config.buildMode === BuildMode.None) {
172+
process.env["CODEQL_EXTRACTOR_JAVA_OPTION_BUILDLESS_DEPENDENCY_DIR"] =
173+
getJavaDependencyDir();
174+
}
175+
169176
await codeql.extractUsingBuildMode(config, language);
170177
} else {
171178
await codeql.extractScannedLanguage(config, language);

src/dependency-caching.ts

+7
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { join } from "path";
44
import * as actionsCache from "@actions/cache";
55
import * as glob from "@actions/glob";
66

7+
import { getTemporaryDirectory } from "./actions-util";
78
import { getTotalCacheSize } from "./caching-utils";
89
import { Config } from "./config-utils";
910
import { EnvVar } from "./environment";
@@ -28,6 +29,10 @@ interface CacheConfig {
2829
const CODEQL_DEPENDENCY_CACHE_PREFIX = "codeql-dependencies";
2930
const CODEQL_DEPENDENCY_CACHE_VERSION = 1;
3031

32+
export function getJavaDependencyDir(): string {
33+
return join(getTemporaryDirectory(), "codeql_java", "repository");
34+
}
35+
3136
/**
3237
* Default caching configurations per language.
3338
*/
@@ -38,6 +43,8 @@ const CODEQL_DEFAULT_CACHE_CONFIG: { [language: string]: CacheConfig } = {
3843
join(os.homedir(), ".m2", "repository"),
3944
// Gradle
4045
join(os.homedir(), ".gradle", "caches"),
46+
// CodeQL Java build-mode: none
47+
getJavaDependencyDir(),
4148
],
4249
hash: [
4350
// Maven

0 commit comments

Comments
 (0)