diff --git a/.github/workflows/run-checks-all.yml b/.github/workflows/run-checks-all.yml index fabb8b71f799..c42234824f0b 100644 --- a/.github/workflows/run-checks-all.yml +++ b/.github/workflows/run-checks-all.yml @@ -12,6 +12,9 @@ on: - 'main' - 'branch_10x' + schedule: + - cron: '44 1 * * *' + permissions: {} env: @@ -69,8 +72,15 @@ jobs: strategy: matrix: # Operating systems to run on. - os: [ ubuntu-latest, windows-latest, macos-latest ] + os: [ ubuntu-latest, ubuntu-24.04-arm, windows-latest, macos-latest ] java: [ '25' ] + trigger: + - ${{ github.event_name }} + exclude: + - os: macos-latest + trigger: push + - os: macos-latest + trigger: pull_request runs-on: ${{ matrix.os }} @@ -96,7 +106,7 @@ jobs: echo "tests.workDir=/tmp/tmpfs/lucene" >> build-options.local.properties - name: Run gradle tests - run: ./gradlew test "-Ptask.times=true" "-Pvalidation.errorprone=false" + run: ./gradlew displayGradleDiagnostics allOptions test "-Ptask.times=true" "-Pvalidation.errorprone=false" env: # Set to the defaults to override the "CI"-based logic that would enable C2 # we can't afford C2 on github runners. diff --git a/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/java/ErrorPronePlugin.java b/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/java/ErrorPronePlugin.java index 0dd2288ce1e1..5e4ef8c47747 100644 --- a/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/java/ErrorPronePlugin.java +++ b/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/java/ErrorPronePlugin.java @@ -895,7 +895,7 @@ private void configureErrorProne(Project project) { .withType(JavaCompile.class) .configureEach( t -> { - t.dependsOn(":" + CheckEnvironmentPlugin.CHECK_JDK_INTERNALS_EXPOSED_TO_GRADLE_TASK); + t.dependsOn(":" + CheckEnvironmentPlugin.TASK_CHECK_JDK_INTERNALS_EXPOSED_TO_GRADLE); var epOptions = ((ExtensionAware) t.getOptions()) diff --git a/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/misc/CheckEnvironmentPlugin.java b/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/misc/CheckEnvironmentPlugin.java index 8fed7326fae4..cb49afc0d61c 100644 --- a/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/misc/CheckEnvironmentPlugin.java +++ b/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/misc/CheckEnvironmentPlugin.java @@ -18,7 +18,10 @@ import java.util.Locale; import java.util.Set; +import java.util.stream.Collectors; +import java.util.stream.Stream; import org.apache.lucene.gradle.plugins.LuceneGradlePlugin; +import org.gradle.StartParameter; import org.gradle.api.GradleException; import org.gradle.api.JavaVersion; import org.gradle.api.Project; @@ -31,9 +34,11 @@ * JVM is supported, etc. */ public class CheckEnvironmentPlugin extends LuceneGradlePlugin { - public static final String CHECK_JDK_INTERNALS_EXPOSED_TO_GRADLE_TASK = + public static final String TASK_CHECK_JDK_INTERNALS_EXPOSED_TO_GRADLE = "checkJdkInternalsExportedToGradle"; + public static final String TASK_DISPLAY_GRADLE_DIAGNOSTICS = "displayGradleDiagnostics"; + @Override public void apply(Project rootProject) { applicableToRootProjectOnly(rootProject); @@ -106,7 +111,7 @@ public void apply(Project rootProject) { rootProject .getTasks() .register( - CHECK_JDK_INTERNALS_EXPOSED_TO_GRADLE_TASK, + TASK_CHECK_JDK_INTERNALS_EXPOSED_TO_GRADLE, task -> { task.doFirst( _ -> { @@ -131,5 +136,31 @@ public void apply(Project rootProject) { } }); }); + + rootProject + .getTasks() + .register( + TASK_DISPLAY_GRADLE_DIAGNOSTICS, + task -> { + task.doFirst( + t -> { + StartParameter startParameter = t.getProject().getGradle().getStartParameter(); + + var logger = t.getLogger(); + logger.lifecycle( + Stream.of( + "max workers: " + startParameter.getMaxWorkerCount(), + "tests.jvms: " + + getBuildOptions(t.getProject().project(":lucene:core")) + .getOption("tests.jvms") + .asStringProvider() + .get(), + "cache dir: " + startParameter.getProjectCacheDir(), + "current dir: " + startParameter.getCurrentDir(), + "user home dir: " + startParameter.getGradleUserHomeDir()) + .map(v -> " - " + v) + .collect(Collectors.joining("\n"))); + }); + }); } } diff --git a/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/spotless/GoogleJavaFormatPlugin.java b/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/spotless/GoogleJavaFormatPlugin.java index d16300eb0968..727c31b1f2ad 100644 --- a/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/spotless/GoogleJavaFormatPlugin.java +++ b/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/spotless/GoogleJavaFormatPlugin.java @@ -71,7 +71,7 @@ public void apply(Project project) { t.configure( task -> { task.getBatchSize().set(batchSizeOption); - task.dependsOn(":" + CheckEnvironmentPlugin.CHECK_JDK_INTERNALS_EXPOSED_TO_GRADLE_TASK); + task.dependsOn(":" + CheckEnvironmentPlugin.TASK_CHECK_JDK_INTERNALS_EXPOSED_TO_GRADLE); }); }