Merge pull request #20752 from asgerf/actions/dont-fail-if-no-js

Actions: don't fail if no JS/TS code was found
This commit is contained in:
Asger F
2025-11-04 13:12:12 +01:00
committed by Michael B. Gale
parent 637e12e7a8
commit 6790684767
2 changed files with 14 additions and 2 deletions

View File

@@ -489,13 +489,18 @@ public class AutoBuild {
diagnosticsToClose.forEach(DiagnosticWriter::close); diagnosticsToClose.forEach(DiagnosticWriter::close);
} }
if (!hasSeenCode()) { // Fail extraction if no relevant files were found.
boolean seenRelevantFiles = EnvironmentVariables.isActionsExtractor()
? seenFiles // assume all files are relevant for Actions extractor
: hasSeenCode();
if (!seenRelevantFiles) {
if (seenFiles) { if (seenFiles) {
warn("Only found JavaScript or TypeScript files that were empty or contained syntax errors."); warn("Only found JavaScript or TypeScript files that were empty or contained syntax errors.");
} else { } else {
warn("No JavaScript or TypeScript code found."); warn("No JavaScript or TypeScript code found.");
} }
// ensuring that the finalize steps detects that no code was seen. // Ensuring that the finalize steps detects that no code was seen.
// This is necessary to ensure we don't produce an overlay-base database without externs.
Path srcFolder = Paths.get(EnvironmentVariables.getWipDatabase(), "src"); Path srcFolder = Paths.get(EnvironmentVariables.getWipDatabase(), "src");
try { try {
FileUtil8.recursiveDelete(srcFolder); FileUtil8.recursiveDelete(srcFolder);

View File

@@ -18,6 +18,9 @@ public class EnvironmentVariables {
public static final String CODEQL_EXTRACTOR_JAVASCRIPT_WIP_DATABASE_ENV_VAR = public static final String CODEQL_EXTRACTOR_JAVASCRIPT_WIP_DATABASE_ENV_VAR =
"CODEQL_EXTRACTOR_JAVASCRIPT_WIP_DATABASE"; "CODEQL_EXTRACTOR_JAVASCRIPT_WIP_DATABASE";
public static final String CODEQL_EXTRACTOR_ACTIONS_WIP_DATABASE_ENV_VAR =
"CODEQL_EXTRACTOR_ACTIONS_WIP_DATABASE";
public static final String CODEQL_DIST_ENV_VAR = "CODEQL_DIST"; public static final String CODEQL_DIST_ENV_VAR = "CODEQL_DIST";
/** /**
@@ -94,4 +97,8 @@ public class EnvironmentVariables {
public static String getWipDatabase() { public static String getWipDatabase() {
return Env.systemEnv().getNonEmpty(CODEQL_EXTRACTOR_JAVASCRIPT_WIP_DATABASE_ENV_VAR); return Env.systemEnv().getNonEmpty(CODEQL_EXTRACTOR_JAVASCRIPT_WIP_DATABASE_ENV_VAR);
} }
public static boolean isActionsExtractor() {
return Env.systemEnv().getNonEmpty(CODEQL_EXTRACTOR_ACTIONS_WIP_DATABASE_ENV_VAR) != null;
}
} }