diff --git a/src/feature-flags.ts b/src/feature-flags.ts index cde3ab677..a48418c79 100644 --- a/src/feature-flags.ts +++ b/src/feature-flags.ts @@ -44,6 +44,7 @@ export interface FeatureEnablement { */ export enum Feature { CliConfigFileEnabled = "cli_config_file_enabled", + CodeqlJavaLombokEnabled = "codeql_java_lombok_enabled", DisableKotlinAnalysisEnabled = "disable_kotlin_analysis_enabled", DisablePythonDependencyInstallationEnabled = "disable_python_dependency_installation_enabled", ExportDiagnosticsEnabled = "export_diagnostics_enabled", @@ -58,6 +59,11 @@ export const featureConfig: Record< Feature, { envVar: string; minimumVersion: string | undefined; defaultValue: boolean } > = { + [Feature.CodeqlJavaLombokEnabled]: { + envVar: "CODEQL_JAVA_LOMBOK_ENABLED", + minimumVersion: "2.14.0", + defaultValue: false, + }, [Feature.DisableKotlinAnalysisEnabled]: { envVar: "CODEQL_DISABLE_KOTLIN_ANALYSIS", minimumVersion: undefined, diff --git a/src/init-action.ts b/src/init-action.ts index 03ae582a0..09b7b0b54 100644 --- a/src/init-action.ts +++ b/src/init-action.ts @@ -342,6 +342,14 @@ async function run() { core.exportVariable("CODEQL_EXTRACTOR_JAVA_AGENT_DISABLE_KOTLIN", "true"); } + if (await features.getValue(Feature.CodeqlJavaLombokEnabled)) { + logger.info("Enabling CodeQL Java Lombok support"); + core.exportVariable("CODEQL_EXTRACTOR_JAVA_RUN_ANNOTATION_PROCESSORS", "true"); + } else { + logger.info("Disabling CodeQL Java Lombok support"); + core.exportVariable("CODEQL_EXTRACTOR_JAVA_RUN_ANNOTATION_PROCESSORS", "false"); + } + // Disable Python dependency extraction if feature flag set if ( await features.getValue(