Skip to content

Commit afa3ed3

Browse files
committed
Add more documentation
1 parent f8367fb commit afa3ed3

6 files changed

+28
-10
lines changed

lib/analyze.js

+5-1
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

+8-3
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

+6-2
Original file line numberDiff line numberDiff line change
@@ -11,7 +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";
14+
import { getJavaTempDependencyDir } from "./dependency-caching";
1515
import { addDiagnostic, makeDiagnostic } from "./diagnostics";
1616
import {
1717
DiffThunkRange,
@@ -168,9 +168,13 @@ export async function runExtraction(
168168
await setupCppAutobuild(codeql, logger);
169169
}
170170

171+
// The Java `build-mode: none` extractor places dependencies (.jar files) in the
172+
// database scratch directory by default. For dependency caching purposes, we want
173+
// a stable path that caches can be restored into and that we can cache at the
174+
// end of the workflow (i.e. that does not get removed when the scratch directory is).
171175
if (language === Language.java && config.buildMode === BuildMode.None) {
172176
process.env["CODEQL_EXTRACTOR_JAVA_OPTION_BUILDLESS_DEPENDENCY_DIR"] =
173-
getJavaDependencyDir();
177+
getJavaTempDependencyDir();
174178
}
175179

176180
await codeql.extractUsingBuildMode(config, language);

src/dependency-caching.ts

+7-2
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,12 @@ interface CacheConfig {
2929
const CODEQL_DEPENDENCY_CACHE_PREFIX = "codeql-dependencies";
3030
const CODEQL_DEPENDENCY_CACHE_VERSION = 1;
3131

32-
export function getJavaDependencyDir(): string {
32+
/**
33+
* Returns a path to a directory intended to be used to store .jar files
34+
* for the Java `build-mode: none` extractor.
35+
* @returns The path to the directory that should be used by the `build-mode: none` extractor.
36+
*/
37+
export function getJavaTempDependencyDir(): string {
3338
return join(getTemporaryDirectory(), "codeql_java", "repository");
3439
}
3540

@@ -44,7 +49,7 @@ const CODEQL_DEFAULT_CACHE_CONFIG: { [language: string]: CacheConfig } = {
4449
// Gradle
4550
join(os.homedir(), ".gradle", "caches"),
4651
// CodeQL Java build-mode: none
47-
getJavaDependencyDir(),
52+
getJavaTempDependencyDir(),
4853
],
4954
hash: [
5055
// Maven

0 commit comments

Comments
 (0)