Extract status file path helper

This commit is contained in:
Henry Mercer
2026-02-17 13:38:11 +00:00
parent 657f337cd1
commit fa56ea8dc0
3 changed files with 27 additions and 21 deletions

View File

@@ -165559,14 +165559,17 @@ var path7 = __toESM(require("path"));
var actionsCache2 = __toESM(require_cache5());
var MAX_CACHE_OPERATION_MS = 3e4;
var STATUS_FILE_NAME = "overlay-status.json";
async function saveOverlayStatus(codeql, languages, diskUsage, status, logger) {
const cacheKey = await getCacheKey(codeql, languages, diskUsage);
const statusFile = path7.join(
function getStatusFilePath(languages) {
return path7.join(
getTemporaryDirectory(),
"overlay-status",
[...languages].sort().join("+"),
STATUS_FILE_NAME
);
}
async function saveOverlayStatus(codeql, languages, diskUsage, status, logger) {
const cacheKey = await getCacheKey(codeql, languages, diskUsage);
const statusFile = getStatusFilePath(languages);
await fs6.promises.mkdir(path7.dirname(statusFile), { recursive: true });
await fs6.promises.writeFile(statusFile, JSON.stringify(status));
try {

15
lib/init-action.js generated
View File

@@ -105708,6 +105708,14 @@ var path7 = __toESM(require("path"));
var actionsCache2 = __toESM(require_cache5());
var MAX_CACHE_OPERATION_MS2 = 3e4;
var STATUS_FILE_NAME = "overlay-status.json";
function getStatusFilePath(languages) {
return path7.join(
getTemporaryDirectory(),
"overlay-status",
[...languages].sort().join("+"),
STATUS_FILE_NAME
);
}
async function shouldSkipOverlayAnalysis(codeql, languages, diskUsage, logger) {
const status = await getOverlayStatus(codeql, languages, diskUsage, logger);
if (status === void 0) {
@@ -105727,12 +105735,7 @@ async function shouldSkipOverlayAnalysis(codeql, languages, diskUsage, logger) {
}
async function getOverlayStatus(codeql, languages, diskUsage, logger) {
const cacheKey3 = await getCacheKey(codeql, languages, diskUsage);
const statusFile = path7.join(
getTemporaryDirectory(),
"overlay-status",
[...languages].sort().join("+"),
STATUS_FILE_NAME
);
const statusFile = getStatusFilePath(languages);
await fs5.promises.mkdir(path7.dirname(statusFile), { recursive: true });
try {
const foundKey = await waitForResultWithTimeLimit(

View File

@@ -28,6 +28,16 @@ const MAX_CACHE_OPERATION_MS = 30_000;
/** File name for the serialized overlay status. */
const STATUS_FILE_NAME = "overlay-status.json";
/** Path to the local overlay status file. */
function getStatusFilePath(languages: string[]): string {
return path.join(
getTemporaryDirectory(),
"overlay-status",
[...languages].sort().join("+"),
STATUS_FILE_NAME,
);
}
/** Status of an overlay analysis for a set of languages. */
export interface OverlayStatus {
/** Whether the job attempted to build an overlay base database. */
@@ -78,12 +88,7 @@ export async function getOverlayStatus(
logger: Logger,
): Promise<OverlayStatus | undefined> {
const cacheKey = await getCacheKey(codeql, languages, diskUsage);
const statusFile = path.join(
getTemporaryDirectory(),
"overlay-status",
[...languages].sort().join("+"),
STATUS_FILE_NAME,
);
const statusFile = getStatusFilePath(languages);
await fs.promises.mkdir(path.dirname(statusFile), { recursive: true });
try {
@@ -129,12 +134,7 @@ export async function saveOverlayStatus(
logger: Logger,
): Promise<boolean> {
const cacheKey = await getCacheKey(codeql, languages, diskUsage);
const statusFile = path.join(
getTemporaryDirectory(),
"overlay-status",
[...languages].sort().join("+"),
STATUS_FILE_NAME,
);
const statusFile = getStatusFilePath(languages);
await fs.promises.mkdir(path.dirname(statusFile), { recursive: true });
await fs.promises.writeFile(statusFile, JSON.stringify(status));