From 7ab4769ed1429823992039a65bf22277102740c0 Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Wed, 9 Apr 2025 11:53:47 +0200 Subject: [PATCH 01/11] Update Gradle wrapper to 8.14-rc-1 --- build-tools-internal/gradle/wrapper/gradle-wrapper.properties | 4 ++-- build-tools-internal/src/main/resources/minimumGradleVersion | 2 +- gradle/wrapper/gradle-wrapper.properties | 4 ++-- plugins/examples/gradle/wrapper/gradle-wrapper.properties | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/build-tools-internal/gradle/wrapper/gradle-wrapper.properties b/build-tools-internal/gradle/wrapper/gradle-wrapper.properties index 2a6e21b2ba89a..b922b027293ea 100644 --- a/build-tools-internal/gradle/wrapper/gradle-wrapper.properties +++ b/build-tools-internal/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=fba8464465835e74f7270bbf43d6d8a8d7709ab0a43ce1aa3323f73e9aa0c612 -distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-all.zip +distributionSha256Sum=c9fefec1c0f508a2aa7365cb3e231110f16a7c478177a354ec2e11637fbaa422 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-rc-1-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/build-tools-internal/src/main/resources/minimumGradleVersion b/build-tools-internal/src/main/resources/minimumGradleVersion index 4e28b0862495c..a38e11e0268a1 100644 --- a/build-tools-internal/src/main/resources/minimumGradleVersion +++ b/build-tools-internal/src/main/resources/minimumGradleVersion @@ -1 +1 @@ -8.12.1 \ No newline at end of file +8.14-rc-1 \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 2a6e21b2ba89a..b922b027293ea 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=fba8464465835e74f7270bbf43d6d8a8d7709ab0a43ce1aa3323f73e9aa0c612 -distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-all.zip +distributionSha256Sum=c9fefec1c0f508a2aa7365cb3e231110f16a7c478177a354ec2e11637fbaa422 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-rc-1-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/plugins/examples/gradle/wrapper/gradle-wrapper.properties b/plugins/examples/gradle/wrapper/gradle-wrapper.properties index 2a6e21b2ba89a..b922b027293ea 100644 --- a/plugins/examples/gradle/wrapper/gradle-wrapper.properties +++ b/plugins/examples/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=fba8464465835e74f7270bbf43d6d8a8d7709ab0a43ce1aa3323f73e9aa0c612 -distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-all.zip +distributionSha256Sum=c9fefec1c0f508a2aa7365cb3e231110f16a7c478177a354ec2e11637fbaa422 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-rc-1-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME From 024119a776dbb62002421968a2d04ebe54a26fa9 Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Wed, 9 Apr 2025 13:10:12 +0200 Subject: [PATCH 02/11] Fix PatternSetFactory incompatibility --- .../internal/test/rest/CopyRestApiTask.java | 7 ++--- .../internal/test/rest/CopyRestTestsTask.java | 29 +++++++++++++++---- .../compat/RestCompatTestTransformTask.java | 10 +++---- 3 files changed, 32 insertions(+), 14 deletions(-) diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestApiTask.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestApiTask.java index 1617f317d52c9..aa932a717858f 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestApiTask.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestApiTask.java @@ -25,8 +25,7 @@ import org.gradle.api.tasks.SkipWhenEmpty; import org.gradle.api.tasks.TaskAction; import org.gradle.api.tasks.util.PatternFilterable; -import org.gradle.api.tasks.util.PatternSet; -import org.gradle.internal.Factory; +import org.gradle.api.tasks.util.internal.PatternSetFactory; import java.io.File; import java.io.IOException; @@ -65,14 +64,14 @@ public class CopyRestApiTask extends DefaultTask { @Inject public CopyRestApiTask( ProjectLayout projectLayout, - Factory patternSetFactory, + PatternSetFactory patternSetFactory, FileSystemOperations fileSystemOperations, ObjectFactory objectFactory ) { this.include = objectFactory.listProperty(String.class); this.outputResourceDir = objectFactory.directoryProperty(); this.additionalYamlTestsDir = objectFactory.directoryProperty(); - this.patternSet = patternSetFactory.create(); + this.patternSet = patternSetFactory.createPatternSet(); this.projectLayout = projectLayout; this.fileSystemOperations = fileSystemOperations; } diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java index 6890cfb652952..5a8f724bec82e 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java @@ -29,8 +29,7 @@ import org.gradle.api.tasks.SkipWhenEmpty; import org.gradle.api.tasks.TaskAction; import org.gradle.api.tasks.util.PatternFilterable; -import org.gradle.api.tasks.util.PatternSet; -import org.gradle.internal.Factory; +import org.gradle.api.tasks.util.internal.PatternSetFactory; import java.io.File; import java.util.Map; @@ -72,19 +71,39 @@ public abstract class CopyRestTestsTask extends DefaultTask { @Inject public CopyRestTestsTask( ProjectLayout projectLayout, - Factory patternSetFactory, + PatternSetFactory patternSetFactory, FileSystemOperations fileSystemOperations, ObjectFactory objectFactory ) { this.includeCore = objectFactory.listProperty(String.class); this.includeXpack = objectFactory.listProperty(String.class); this.outputResourceDir = objectFactory.directoryProperty(); - this.corePatternSet = patternSetFactory.create(); - this.xpackPatternSet = patternSetFactory.create(); + this.corePatternSet = patternSetFactory.createPatternSet(); + this.xpackPatternSet = patternSetFactory.createPatternSet(); this.projectLayout = projectLayout; this.fileSystemOperations = fileSystemOperations; } + @Inject + protected ProjectLayout getProjectLayout() { + throw new UnsupportedOperationException(); + } + + @Inject + protected FileSystemOperations getFileSystemOperations() { + throw new UnsupportedOperationException(); + } + + @Inject + protected ObjectFactory getObjectFactory() { + throw new UnsupportedOperationException(); + } + + @Inject + protected PatternSetFactory getPatternSetFactory() { + throw new UnsupportedOperationException(); + } + @Input public ListProperty getIncludeCore() { return includeCore; diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/compat/compat/RestCompatTestTransformTask.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/compat/compat/RestCompatTestTransformTask.java index ba242a8e23861..43550ca907eac 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/compat/compat/RestCompatTestTransformTask.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/compat/compat/RestCompatTestTransformTask.java @@ -58,7 +58,7 @@ import org.gradle.api.tasks.TaskAction; import org.gradle.api.tasks.util.PatternFilterable; import org.gradle.api.tasks.util.PatternSet; -import org.gradle.internal.Factory; +import org.gradle.api.tasks.util.internal.PatternSetFactory; import java.io.File; import java.io.IOException; @@ -99,7 +99,7 @@ public abstract class RestCompatTestTransformTask extends DefaultTask { private final Map>> skippedTestByTestNameTransformations = new HashMap<>(); @Inject - protected Factory getPatternSetFactory() { + protected PatternSetFactory getPatternSetFactory() { throw new UnsupportedOperationException(); } @@ -109,7 +109,7 @@ public RestCompatTestTransformTask(FileSystemOperations fileSystemOperations, Ob this.compatibleVersion = Version.fromString(VersionProperties.getVersions().get("elasticsearch")).getMajor() - 1; this.sourceDirectory = objectFactory.directoryProperty(); this.outputDirectory = objectFactory.directoryProperty(); - this.testPatternSet = getPatternSetFactory().create(); + this.testPatternSet = getPatternSetFactory().createPatternSet(); this.testPatternSet.include("/*" + "*/*.yml"); // concat these strings to keep build from thinking this is invalid javadoc // always inject compat headers headers.put("Content-Type", "application/vnd.elasticsearch+json;compatible-with=" + compatibleVersion); @@ -144,7 +144,7 @@ public void skipTest(String fullTestName, String reason) { ); } - PatternSet skippedPatternSet = getPatternSetFactory().create(); + PatternSet skippedPatternSet = getPatternSetFactory().createPatternSet(); // create file patterns for all a1/a2/a3/b.yml possibilities. for (int i = testParts.length - 1; i > 1; i--) { final String lastPart = testParts[i]; @@ -158,7 +158,7 @@ public void skipTest(String fullTestName, String reason) { } public void skipTestsByFilePattern(String filePattern, String reason) { - PatternSet skippedPatternSet = getPatternSetFactory().create(); + PatternSet skippedPatternSet = getPatternSetFactory().createPatternSet(); skippedPatternSet.include(filePattern); skippedTestByFilePatternTransformations.put(skippedPatternSet, reason); } From 3d6ef0326479a60b1911016826e4cc73a0e662d8 Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Mon, 28 Apr 2025 10:07:31 +0200 Subject: [PATCH 03/11] Update ospackage plugin --- gradle/build.versions.toml | 2 +- gradle/verification-metadata.xml | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/gradle/build.versions.toml b/gradle/build.versions.toml index 9e470e210fe2b..a5ebb38ff3a6b 100644 --- a/gradle/build.versions.toml +++ b/gradle/build.versions.toml @@ -48,4 +48,4 @@ wiremock = "com.github.tomakehurst:wiremock-jre8-standalone:2.23.2" xmlunit-core = "org.xmlunit:xmlunit-core:2.8.2" [plugins] -ospackage = { id = "com.netflix.nebula.ospackage-base", version = "11.11.1" } +ospackage = { id = "com.netflix.nebula.ospackage-base", version = "11.11.2" } diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 15e2b6df77f60..3df2bc1086e6b 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -996,6 +996,11 @@ + + + + + From b18ed9f0fe93b80eef5ca5cd12b78211f94d5374 Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Mon, 28 Apr 2025 10:19:27 +0200 Subject: [PATCH 04/11] Update Gradle wrapper to 8.14 --- .../gradle/wrapper/gradle-wrapper.properties | 4 ++-- .../src/main/resources/minimumGradleVersion | 2 +- gradle/wrapper/gradle-wrapper.jar | Bin 43705 -> 43764 bytes gradle/wrapper/gradle-wrapper.properties | 4 ++-- gradlew | 4 ++-- gradlew.bat | 4 ++-- .../gradle/wrapper/gradle-wrapper.properties | 4 ++-- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/build-tools-internal/gradle/wrapper/gradle-wrapper.properties b/build-tools-internal/gradle/wrapper/gradle-wrapper.properties index b922b027293ea..f373f37ad8290 100644 --- a/build-tools-internal/gradle/wrapper/gradle-wrapper.properties +++ b/build-tools-internal/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=c9fefec1c0f508a2aa7365cb3e231110f16a7c478177a354ec2e11637fbaa422 -distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-rc-1-all.zip +distributionSha256Sum=efe9a3d147d948d7528a9887fa35abcf24ca1a43ad06439996490f77569b02d1 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/build-tools-internal/src/main/resources/minimumGradleVersion b/build-tools-internal/src/main/resources/minimumGradleVersion index a38e11e0268a1..b9d71048250a3 100644 --- a/build-tools-internal/src/main/resources/minimumGradleVersion +++ b/build-tools-internal/src/main/resources/minimumGradleVersion @@ -1 +1 @@ -8.14-rc-1 \ No newline at end of file +8.14 \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 9bbc975c742b298b441bfb90dbc124400a3751b9..1b33c55baabb587c669f562ae36f953de2481846 100644 GIT binary patch delta 642 zcmdmamFde>rVZJA^}0Q$xegf!xPEW^+5YDM%iT2bEgct9o+jH~+sJas#HZ=szO|** z=Pj=X_vx?W&DSwKck|WWn~hffsvnQ+42*W$b7b0$SCcOoZ`{W{^$^pk;4>8-A*-)$ z?n(Po`1$6Jn_u?t-L+tsPyZ2#X}8T6OS8pAU;kdgd+_Hw4z4TW0p9E!T+=f7-c&O% zFic^X{7^$?^Ho04eona9n#mGMxKhA=~8B%JN`M zMhm5wc-2v)$``sY$!Q`9xiU@DhI73ZxiGEKg>yIPs)NmWwMdF-ngLXpZSqV5ez36n zVkxF2rjrjWR+_xr6e6@_u@s~2uv{9vi*1pj2)BjFD+-%@&pRVP1f{O1glxTOp2-62Ph;v z`N1+vCd)9ea)af*Ol1*JCfnp$%Uu}%OuoN7g2}3C@`L5FlP#(sA=|h@iixuZC?qp^ z=L$=v$ZoI}|87Wh=&h7udff{aieKr*l+zDp?pf)_bbRvUf>kn;HCDMXNlgbbo!QRK I1x7am0No)LiU0rr delta 584 zcmexzm1*ZyrVZJAexH5Moc8h7)w{^+t*dqJ%=yhh23L$9JpFV=_k`zJ-?Q4DI*eSe z+ES)HSrVnWLtJ&)lO%hRkV9zl5qqWRt0e;bb zPPo`)y?HTAyZI&u&X<|2$FDHCf4;!v8}p=?Tm`^F0`u(|1ttf~&t$qP3KUSD>@TJQ zRwJ}Pim6NzEc8KA6)e;S6gs8=7IIL8sQL*MYEuRYO;Uj<%3UbMbV&^&!Zvx+LKmjT z8Zch6rYP7Tw?$Hn(UTJwWiS=$f{lB(C=e*%usDV})0AQIK~sat=ND@+Gg*Pyij!rR z*fa02W|%BsV++>4W{DKDGSIUEHd2$P+8ct!RF+CHDowUuTEZOZ%rJSQv*qOXOSPDN zT|sP-$p*_3ncsWB*qoD7JQcyZ9xan%cJP6Tb4-?AZpr*F6v98hoNaPJm@HV`yya5N z))6pqFXn@}P(3T0nEzM8*c_9KtE9o|_pFd&K35GBXP^9Kg(b6GH-z8S4GDzIl~T+b zdLd#meKKHu$5u))8cu$=GKINkGDPOUD)!0$C(BH(U!}!-e;Q0ok8Sc?V1zRO04>ts AA^-pY diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index b922b027293ea..f373f37ad8290 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=c9fefec1c0f508a2aa7365cb3e231110f16a7c478177a354ec2e11637fbaa422 -distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-rc-1-all.zip +distributionSha256Sum=efe9a3d147d948d7528a9887fa35abcf24ca1a43ad06439996490f77569b02d1 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/gradlew b/gradlew index faf93008b77e7..23d15a9367071 100755 --- a/gradlew +++ b/gradlew @@ -114,7 +114,7 @@ case "$( uname )" in #( NONSTOP* ) nonstop=true ;; esac -CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar +CLASSPATH="\\\"\\\"" # Determine the Java command to use to start the JVM. @@ -213,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' set -- \ "-Dorg.gradle.appname=$APP_BASE_NAME" \ -classpath "$CLASSPATH" \ - org.gradle.wrapper.GradleWrapperMain \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ "$@" # Stop when "xargs" is not available. diff --git a/gradlew.bat b/gradlew.bat index 9b42019c7915b..5eed7ee845284 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -70,11 +70,11 @@ goto fail :execute @rem Setup the command line -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar +set CLASSPATH= @rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* :end @rem End local scope for the variables with windows NT shell diff --git a/plugins/examples/gradle/wrapper/gradle-wrapper.properties b/plugins/examples/gradle/wrapper/gradle-wrapper.properties index b922b027293ea..f373f37ad8290 100644 --- a/plugins/examples/gradle/wrapper/gradle-wrapper.properties +++ b/plugins/examples/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=c9fefec1c0f508a2aa7365cb3e231110f16a7c478177a354ec2e11637fbaa422 -distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-rc-1-all.zip +distributionSha256Sum=efe9a3d147d948d7528a9887fa35abcf24ca1a43ad06439996490f77569b02d1 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME From fa4839c9bea2b1fd86e7cc84242955f5b450742a Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Mon, 28 Apr 2025 10:27:57 +0200 Subject: [PATCH 05/11] Some cleanup --- .../internal/test/rest/CopyRestTestsTask.java | 16 ++++------------ .../compat/RestCompatTestTransformTask.java | 8 +++----- 2 files changed, 7 insertions(+), 17 deletions(-) diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java index 5a8f724bec82e..033093eea99ae 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java @@ -85,24 +85,16 @@ public CopyRestTestsTask( } @Inject - protected ProjectLayout getProjectLayout() { - throw new UnsupportedOperationException(); - } + protected abstract ProjectLayout getProjectLayout(); @Inject - protected FileSystemOperations getFileSystemOperations() { - throw new UnsupportedOperationException(); - } + protected abstract FileSystemOperations getFileSystemOperations(); @Inject - protected ObjectFactory getObjectFactory() { - throw new UnsupportedOperationException(); - } + protected abstract ObjectFactory getObjectFactory(); @Inject - protected PatternSetFactory getPatternSetFactory() { - throw new UnsupportedOperationException(); - } + protected abstract PatternSetFactory getPatternSetFactory(); @Input public ListProperty getIncludeCore() { diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/compat/compat/RestCompatTestTransformTask.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/compat/compat/RestCompatTestTransformTask.java index 43550ca907eac..6d6590429feb1 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/compat/compat/RestCompatTestTransformTask.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/compat/compat/RestCompatTestTransformTask.java @@ -98,11 +98,6 @@ public abstract class RestCompatTestTransformTask extends DefaultTask { // PatternFilterable -> list of full test names and reasons. Needed for 1 pattern may include many tests and reasons private final Map>> skippedTestByTestNameTransformations = new HashMap<>(); - @Inject - protected PatternSetFactory getPatternSetFactory() { - throw new UnsupportedOperationException(); - } - @Inject public RestCompatTestTransformTask(FileSystemOperations fileSystemOperations, ObjectFactory objectFactory) { this.fileSystemOperations = fileSystemOperations; @@ -117,6 +112,9 @@ public RestCompatTestTransformTask(FileSystemOperations fileSystemOperations, Ob getTransformations().add(new InjectHeaders(headers, Sets.newHashSet(RestCompatTestTransformTask::doesNotHaveCatOperation))); } + @Inject + protected abstract PatternSetFactory getPatternSetFactory(); + private static boolean doesNotHaveCatOperation(ObjectNode doNodeValue) { final Iterator fieldNamesIterator = doNodeValue.fieldNames(); while (fieldNamesIterator.hasNext()) { From 556fd8a08a87e00a330cd3b94274fa06e2dca38f Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Mon, 28 Apr 2025 11:52:25 +0200 Subject: [PATCH 06/11] Use stronger typing in SystemPropertyCommandLineArgumentProvider --- .../test/LegacyRestTestBasePlugin.java | 21 ++++++++++------ .../test/rest/RestTestBasePlugin.java | 24 ++++++++++++++----- .../gradle/test/JavaRestTestPlugin.java | 20 ++++++++++++---- ...emPropertyCommandLineArgumentProvider.java | 4 ---- .../gradle/test/YamlRestTestPlugin.java | 14 ++++++++--- 5 files changed, 58 insertions(+), 25 deletions(-) diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/LegacyRestTestBasePlugin.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/LegacyRestTestBasePlugin.java index 62d91bf76b5d4..4e1dd337b953e 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/LegacyRestTestBasePlugin.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/LegacyRestTestBasePlugin.java @@ -51,7 +51,6 @@ public class LegacyRestTestBasePlugin implements Plugin { private static final String TESTS_CLUSTER_REMOTE_ACCESS = "tests.cluster.remote_access"; private ProviderFactory providerFactory; - private Project project; @Inject public LegacyRestTestBasePlugin(ProviderFactory providerFactory) { @@ -60,7 +59,6 @@ public LegacyRestTestBasePlugin(ProviderFactory providerFactory) { @Override public void apply(Project project) { - this.project = project; Provider serviceProvider = project.getGradle() .getSharedServices() .registerIfAbsent("restrictedBuildAPI", RestrictedBuildApiService.class, spec -> { @@ -88,13 +86,22 @@ public void apply(Project project) { } SystemPropertyCommandLineArgumentProvider runnerNonInputProperties = (SystemPropertyCommandLineArgumentProvider) restIntegTestTask.getExtensions().getByName("nonInputProperties"); - runnerNonInputProperties.systemProperty(TESTS_REST_CLUSTER, () -> String.join(",", cluster.getAllHttpSocketURI())); - runnerNonInputProperties.systemProperty(TESTS_CLUSTER, () -> String.join(",", cluster.getAllTransportPortURI())); - runnerNonInputProperties.systemProperty(TESTS_CLUSTER_NAME, cluster::getName); - runnerNonInputProperties.systemProperty(TESTS_CLUSTER_READINESS, () -> String.join(",", cluster.getAllReadinessPortURI())); + runnerNonInputProperties.systemProperty( + TESTS_REST_CLUSTER, + providerFactory.provider(() -> String.join(",", cluster.getAllHttpSocketURI())) + ); + runnerNonInputProperties.systemProperty( + TESTS_CLUSTER, + providerFactory.provider(() -> String.join(",", cluster.getAllTransportPortURI())) + ); + runnerNonInputProperties.systemProperty(TESTS_CLUSTER_NAME, providerFactory.provider(cluster::getName)); + runnerNonInputProperties.systemProperty( + TESTS_CLUSTER_READINESS, + providerFactory.provider(() -> String.join(",", cluster.getAllReadinessPortURI())) + ); runnerNonInputProperties.systemProperty( TESTS_CLUSTER_REMOTE_ACCESS, - () -> String.join(",", cluster.getAllRemoteAccessPortURI()) + providerFactory.provider(() -> String.join(",", cluster.getAllRemoteAccessPortURI())) ); } else { if (systemProperty(TESTS_CLUSTER) == null || systemProperty(TESTS_CLUSTER_NAME) == null) { diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/RestTestBasePlugin.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/RestTestBasePlugin.java index 1259d13773ce7..e5c8e07a095cf 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/RestTestBasePlugin.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/RestTestBasePlugin.java @@ -162,11 +162,17 @@ public void apply(Project project) { // Pass feature metadata on to tests task.getInputs().files(featureMetadataConfig).withPathSensitivity(PathSensitivity.NONE); - nonInputSystemProperties.systemProperty(TESTS_FEATURES_METADATA_PATH, () -> featureMetadataConfig.getAsPath()); + nonInputSystemProperties.systemProperty( + TESTS_FEATURES_METADATA_PATH, + providerFactory.provider(() -> featureMetadataConfig.getAsPath()) + ); // Enable parallel execution for these tests since each test gets its own cluster task.setMaxParallelForks(task.getProject().getGradle().getStartParameter().getMaxWorkerCount() / 2); - nonInputSystemProperties.systemProperty(TESTS_MAX_PARALLEL_FORKS_SYSPROP, () -> String.valueOf(task.getMaxParallelForks())); + nonInputSystemProperties.systemProperty( + TESTS_MAX_PARALLEL_FORKS_SYSPROP, + providerFactory.provider(() -> String.valueOf(task.getMaxParallelForks())) + ); // Disable test failure reporting since this stuff is now captured in build scans task.getExtensions().getByType(ErrorReportingTestListener.class).setDumpOutputOnFailure(false); @@ -180,10 +186,10 @@ public void apply(Project project) { // Register plugins and modules as task inputs and pass paths as system properties to tests var modulePath = project.getObjects().fileCollection().from(modulesConfiguration); - nonInputSystemProperties.systemProperty(TESTS_CLUSTER_MODULES_PATH_SYSPROP, modulePath::getAsPath); + nonInputSystemProperties.systemProperty(TESTS_CLUSTER_MODULES_PATH_SYSPROP, providerFactory.provider(modulePath::getAsPath)); registerConfigurationInputs(task, modulesConfiguration.getName(), modulePath); var pluginPath = project.getObjects().fileCollection().from(pluginsConfiguration); - nonInputSystemProperties.systemProperty(TESTS_CLUSTER_PLUGINS_PATH_SYSPROP, pluginPath::getAsPath); + nonInputSystemProperties.systemProperty(TESTS_CLUSTER_PLUGINS_PATH_SYSPROP, providerFactory.provider(pluginPath::getAsPath)); registerConfigurationInputs( task, extractedPluginsConfiguration.getName(), @@ -192,7 +198,10 @@ public void apply(Project project) { // Wire up integ-test distribution by default for all test tasks FileCollection extracted = integTestDistro.getExtracted(); - nonInputSystemProperties.systemProperty(INTEG_TEST_DISTRIBUTION_SYSPROP, () -> extracted.getSingleFile().getPath()); + nonInputSystemProperties.systemProperty( + INTEG_TEST_DISTRIBUTION_SYSPROP, + providerFactory.provider(() -> extracted.getSingleFile().getPath()) + ); // Add `usesDefaultDistribution()` extension method to test tasks to indicate they require the default distro task.getExtensions().getExtraProperties().set("usesDefaultDistribution", new Closure(task) { @@ -213,7 +222,10 @@ public Void call(Object... args) { // If we are using the default distribution we need to register all module feature metadata task.getInputs().files(defaultDistroFeatureMetadataConfig).withPathSensitivity(PathSensitivity.NONE); - nonInputSystemProperties.systemProperty(TESTS_FEATURES_METADATA_PATH, defaultDistroFeatureMetadataConfig::getAsPath); + nonInputSystemProperties.systemProperty( + TESTS_FEATURES_METADATA_PATH, + providerFactory.provider(defaultDistroFeatureMetadataConfig::getAsPath) + ); return null; } diff --git a/build-tools/src/main/java/org/elasticsearch/gradle/test/JavaRestTestPlugin.java b/build-tools/src/main/java/org/elasticsearch/gradle/test/JavaRestTestPlugin.java index de86e525a82f6..861bcb48ce3d1 100644 --- a/build-tools/src/main/java/org/elasticsearch/gradle/test/JavaRestTestPlugin.java +++ b/build-tools/src/main/java/org/elasticsearch/gradle/test/JavaRestTestPlugin.java @@ -18,6 +18,7 @@ import org.gradle.api.Plugin; import org.gradle.api.Project; import org.gradle.api.plugins.JavaBasePlugin; +import org.gradle.api.provider.ProviderFactory; import org.gradle.api.tasks.SourceSetContainer; import org.gradle.api.tasks.TaskProvider; import org.gradle.api.tasks.bundling.Zip; @@ -50,7 +51,7 @@ public void apply(Project project) { .getExtensions() .getByName(TestClustersPlugin.EXTENSION_NAME); var clusterProvider = testClusters.register(JAVA_REST_TEST); - + ProviderFactory providers = project.getProviders(); // Register test task TaskProvider javaRestTestTask = project.getTasks() .register(JAVA_REST_TEST, StandaloneRestIntegTestTask.class, task -> { @@ -60,10 +61,19 @@ public void apply(Project project) { var cluster = clusterProvider.get(); var nonInputProperties = new SystemPropertyCommandLineArgumentProvider(); - nonInputProperties.systemProperty("tests.rest.cluster", () -> String.join(",", cluster.getAllHttpSocketURI())); - nonInputProperties.systemProperty("tests.cluster", () -> String.join(",", cluster.getAllTransportPortURI())); - nonInputProperties.systemProperty("tests.clustername", () -> cluster.getName()); - nonInputProperties.systemProperty("tests.cluster.readiness", () -> String.join(",", cluster.getAllReadinessPortURI())); + nonInputProperties.systemProperty( + "tests.rest.cluster", + providers.provider(() -> String.join(",", cluster.getAllHttpSocketURI())) + ); + nonInputProperties.systemProperty( + "tests.cluster", + providers.provider(() -> String.join(",", cluster.getAllTransportPortURI())) + ); + nonInputProperties.systemProperty("tests.clustername", providers.provider(() -> cluster.getName())); + nonInputProperties.systemProperty( + "tests.cluster.readiness", + providers.provider(() -> String.join(",", cluster.getAllReadinessPortURI())) + ); task.getJvmArgumentProviders().add(nonInputProperties); }); diff --git a/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java b/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java index 70be689ca637f..4c2df9871e9ca 100644 --- a/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java +++ b/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java @@ -24,10 +24,6 @@ public void systemProperty(String key, Provider value) { systemProperties.put(key, (Supplier) () -> String.valueOf(value.get())); } - public void systemProperty(String key, Supplier value) { - systemProperties.put(key, value); - } - public void systemProperty(String key, Object value) { systemProperties.put(key, value); } diff --git a/build-tools/src/main/java/org/elasticsearch/gradle/test/YamlRestTestPlugin.java b/build-tools/src/main/java/org/elasticsearch/gradle/test/YamlRestTestPlugin.java index cbd39a5878acd..a4bc952ae7fac 100644 --- a/build-tools/src/main/java/org/elasticsearch/gradle/test/YamlRestTestPlugin.java +++ b/build-tools/src/main/java/org/elasticsearch/gradle/test/YamlRestTestPlugin.java @@ -27,6 +27,7 @@ import org.gradle.api.artifacts.type.ArtifactTypeDefinition; import org.gradle.api.attributes.Attribute; import org.gradle.api.plugins.JavaBasePlugin; +import org.gradle.api.provider.ProviderFactory; import org.gradle.api.tasks.Copy; import org.gradle.api.tasks.SourceSet; import org.gradle.api.tasks.SourceSetContainer; @@ -118,6 +119,7 @@ private TaskProvider setupTestTask( SourceSet testSourceSet, NamedDomainObjectProvider clusterProvider ) { + ProviderFactory providers = project.getProviders(); return project.getTasks().register(YAML_REST_TEST, StandaloneRestIntegTestTask.class, task -> { task.useCluster(clusterProvider.get()); task.setTestClassesDirs(testSourceSet.getOutput().getClassesDirs()); @@ -125,9 +127,15 @@ private TaskProvider setupTestTask( var cluster = clusterProvider.get(); var nonInputProperties = new SystemPropertyCommandLineArgumentProvider(); - nonInputProperties.systemProperty("tests.rest.cluster", () -> String.join(",", cluster.getAllHttpSocketURI())); - nonInputProperties.systemProperty("tests.cluster", () -> String.join(",", cluster.getAllTransportPortURI())); - nonInputProperties.systemProperty("tests.clustername", () -> cluster.getName()); + nonInputProperties.systemProperty( + "tests.rest.cluster", + providers.provider(() -> String.join(",", cluster.getAllHttpSocketURI())) + ); + nonInputProperties.systemProperty( + "tests.cluster", + providers.provider(() -> String.join(",", cluster.getAllTransportPortURI())) + ); + nonInputProperties.systemProperty("tests.clustername", providers.provider(() -> cluster.getName())); task.getJvmArgumentProviders().add(nonInputProperties); task.systemProperty("tests.rest.load_packaged", Boolean.FALSE.toString()); }); From 4e0e616256fdf6fdf5890e8ba26878b68a79cfdb Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Mon, 28 Apr 2025 14:42:46 +0200 Subject: [PATCH 07/11] Revert "Use stronger typing in SystemPropertyCommandLineArgumentProvider" This reverts commit 6c8fa63b9d68bc8bbde412cb2c29fe41f8c6b944. --- .../test/LegacyRestTestBasePlugin.java | 21 ++++++---------- .../test/rest/RestTestBasePlugin.java | 24 +++++-------------- .../gradle/test/JavaRestTestPlugin.java | 20 ++++------------ ...emPropertyCommandLineArgumentProvider.java | 4 ++++ .../gradle/test/YamlRestTestPlugin.java | 14 +++-------- 5 files changed, 25 insertions(+), 58 deletions(-) diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/LegacyRestTestBasePlugin.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/LegacyRestTestBasePlugin.java index 4e1dd337b953e..62d91bf76b5d4 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/LegacyRestTestBasePlugin.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/LegacyRestTestBasePlugin.java @@ -51,6 +51,7 @@ public class LegacyRestTestBasePlugin implements Plugin { private static final String TESTS_CLUSTER_REMOTE_ACCESS = "tests.cluster.remote_access"; private ProviderFactory providerFactory; + private Project project; @Inject public LegacyRestTestBasePlugin(ProviderFactory providerFactory) { @@ -59,6 +60,7 @@ public LegacyRestTestBasePlugin(ProviderFactory providerFactory) { @Override public void apply(Project project) { + this.project = project; Provider serviceProvider = project.getGradle() .getSharedServices() .registerIfAbsent("restrictedBuildAPI", RestrictedBuildApiService.class, spec -> { @@ -86,22 +88,13 @@ public void apply(Project project) { } SystemPropertyCommandLineArgumentProvider runnerNonInputProperties = (SystemPropertyCommandLineArgumentProvider) restIntegTestTask.getExtensions().getByName("nonInputProperties"); - runnerNonInputProperties.systemProperty( - TESTS_REST_CLUSTER, - providerFactory.provider(() -> String.join(",", cluster.getAllHttpSocketURI())) - ); - runnerNonInputProperties.systemProperty( - TESTS_CLUSTER, - providerFactory.provider(() -> String.join(",", cluster.getAllTransportPortURI())) - ); - runnerNonInputProperties.systemProperty(TESTS_CLUSTER_NAME, providerFactory.provider(cluster::getName)); - runnerNonInputProperties.systemProperty( - TESTS_CLUSTER_READINESS, - providerFactory.provider(() -> String.join(",", cluster.getAllReadinessPortURI())) - ); + runnerNonInputProperties.systemProperty(TESTS_REST_CLUSTER, () -> String.join(",", cluster.getAllHttpSocketURI())); + runnerNonInputProperties.systemProperty(TESTS_CLUSTER, () -> String.join(",", cluster.getAllTransportPortURI())); + runnerNonInputProperties.systemProperty(TESTS_CLUSTER_NAME, cluster::getName); + runnerNonInputProperties.systemProperty(TESTS_CLUSTER_READINESS, () -> String.join(",", cluster.getAllReadinessPortURI())); runnerNonInputProperties.systemProperty( TESTS_CLUSTER_REMOTE_ACCESS, - providerFactory.provider(() -> String.join(",", cluster.getAllRemoteAccessPortURI())) + () -> String.join(",", cluster.getAllRemoteAccessPortURI()) ); } else { if (systemProperty(TESTS_CLUSTER) == null || systemProperty(TESTS_CLUSTER_NAME) == null) { diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/RestTestBasePlugin.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/RestTestBasePlugin.java index e5c8e07a095cf..1259d13773ce7 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/RestTestBasePlugin.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/RestTestBasePlugin.java @@ -162,17 +162,11 @@ public void apply(Project project) { // Pass feature metadata on to tests task.getInputs().files(featureMetadataConfig).withPathSensitivity(PathSensitivity.NONE); - nonInputSystemProperties.systemProperty( - TESTS_FEATURES_METADATA_PATH, - providerFactory.provider(() -> featureMetadataConfig.getAsPath()) - ); + nonInputSystemProperties.systemProperty(TESTS_FEATURES_METADATA_PATH, () -> featureMetadataConfig.getAsPath()); // Enable parallel execution for these tests since each test gets its own cluster task.setMaxParallelForks(task.getProject().getGradle().getStartParameter().getMaxWorkerCount() / 2); - nonInputSystemProperties.systemProperty( - TESTS_MAX_PARALLEL_FORKS_SYSPROP, - providerFactory.provider(() -> String.valueOf(task.getMaxParallelForks())) - ); + nonInputSystemProperties.systemProperty(TESTS_MAX_PARALLEL_FORKS_SYSPROP, () -> String.valueOf(task.getMaxParallelForks())); // Disable test failure reporting since this stuff is now captured in build scans task.getExtensions().getByType(ErrorReportingTestListener.class).setDumpOutputOnFailure(false); @@ -186,10 +180,10 @@ public void apply(Project project) { // Register plugins and modules as task inputs and pass paths as system properties to tests var modulePath = project.getObjects().fileCollection().from(modulesConfiguration); - nonInputSystemProperties.systemProperty(TESTS_CLUSTER_MODULES_PATH_SYSPROP, providerFactory.provider(modulePath::getAsPath)); + nonInputSystemProperties.systemProperty(TESTS_CLUSTER_MODULES_PATH_SYSPROP, modulePath::getAsPath); registerConfigurationInputs(task, modulesConfiguration.getName(), modulePath); var pluginPath = project.getObjects().fileCollection().from(pluginsConfiguration); - nonInputSystemProperties.systemProperty(TESTS_CLUSTER_PLUGINS_PATH_SYSPROP, providerFactory.provider(pluginPath::getAsPath)); + nonInputSystemProperties.systemProperty(TESTS_CLUSTER_PLUGINS_PATH_SYSPROP, pluginPath::getAsPath); registerConfigurationInputs( task, extractedPluginsConfiguration.getName(), @@ -198,10 +192,7 @@ public void apply(Project project) { // Wire up integ-test distribution by default for all test tasks FileCollection extracted = integTestDistro.getExtracted(); - nonInputSystemProperties.systemProperty( - INTEG_TEST_DISTRIBUTION_SYSPROP, - providerFactory.provider(() -> extracted.getSingleFile().getPath()) - ); + nonInputSystemProperties.systemProperty(INTEG_TEST_DISTRIBUTION_SYSPROP, () -> extracted.getSingleFile().getPath()); // Add `usesDefaultDistribution()` extension method to test tasks to indicate they require the default distro task.getExtensions().getExtraProperties().set("usesDefaultDistribution", new Closure(task) { @@ -222,10 +213,7 @@ public Void call(Object... args) { // If we are using the default distribution we need to register all module feature metadata task.getInputs().files(defaultDistroFeatureMetadataConfig).withPathSensitivity(PathSensitivity.NONE); - nonInputSystemProperties.systemProperty( - TESTS_FEATURES_METADATA_PATH, - providerFactory.provider(defaultDistroFeatureMetadataConfig::getAsPath) - ); + nonInputSystemProperties.systemProperty(TESTS_FEATURES_METADATA_PATH, defaultDistroFeatureMetadataConfig::getAsPath); return null; } diff --git a/build-tools/src/main/java/org/elasticsearch/gradle/test/JavaRestTestPlugin.java b/build-tools/src/main/java/org/elasticsearch/gradle/test/JavaRestTestPlugin.java index 861bcb48ce3d1..de86e525a82f6 100644 --- a/build-tools/src/main/java/org/elasticsearch/gradle/test/JavaRestTestPlugin.java +++ b/build-tools/src/main/java/org/elasticsearch/gradle/test/JavaRestTestPlugin.java @@ -18,7 +18,6 @@ import org.gradle.api.Plugin; import org.gradle.api.Project; import org.gradle.api.plugins.JavaBasePlugin; -import org.gradle.api.provider.ProviderFactory; import org.gradle.api.tasks.SourceSetContainer; import org.gradle.api.tasks.TaskProvider; import org.gradle.api.tasks.bundling.Zip; @@ -51,7 +50,7 @@ public void apply(Project project) { .getExtensions() .getByName(TestClustersPlugin.EXTENSION_NAME); var clusterProvider = testClusters.register(JAVA_REST_TEST); - ProviderFactory providers = project.getProviders(); + // Register test task TaskProvider javaRestTestTask = project.getTasks() .register(JAVA_REST_TEST, StandaloneRestIntegTestTask.class, task -> { @@ -61,19 +60,10 @@ public void apply(Project project) { var cluster = clusterProvider.get(); var nonInputProperties = new SystemPropertyCommandLineArgumentProvider(); - nonInputProperties.systemProperty( - "tests.rest.cluster", - providers.provider(() -> String.join(",", cluster.getAllHttpSocketURI())) - ); - nonInputProperties.systemProperty( - "tests.cluster", - providers.provider(() -> String.join(",", cluster.getAllTransportPortURI())) - ); - nonInputProperties.systemProperty("tests.clustername", providers.provider(() -> cluster.getName())); - nonInputProperties.systemProperty( - "tests.cluster.readiness", - providers.provider(() -> String.join(",", cluster.getAllReadinessPortURI())) - ); + nonInputProperties.systemProperty("tests.rest.cluster", () -> String.join(",", cluster.getAllHttpSocketURI())); + nonInputProperties.systemProperty("tests.cluster", () -> String.join(",", cluster.getAllTransportPortURI())); + nonInputProperties.systemProperty("tests.clustername", () -> cluster.getName()); + nonInputProperties.systemProperty("tests.cluster.readiness", () -> String.join(",", cluster.getAllReadinessPortURI())); task.getJvmArgumentProviders().add(nonInputProperties); }); diff --git a/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java b/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java index 4c2df9871e9ca..70be689ca637f 100644 --- a/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java +++ b/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java @@ -24,6 +24,10 @@ public void systemProperty(String key, Provider value) { systemProperties.put(key, (Supplier) () -> String.valueOf(value.get())); } + public void systemProperty(String key, Supplier value) { + systemProperties.put(key, value); + } + public void systemProperty(String key, Object value) { systemProperties.put(key, value); } diff --git a/build-tools/src/main/java/org/elasticsearch/gradle/test/YamlRestTestPlugin.java b/build-tools/src/main/java/org/elasticsearch/gradle/test/YamlRestTestPlugin.java index a4bc952ae7fac..cbd39a5878acd 100644 --- a/build-tools/src/main/java/org/elasticsearch/gradle/test/YamlRestTestPlugin.java +++ b/build-tools/src/main/java/org/elasticsearch/gradle/test/YamlRestTestPlugin.java @@ -27,7 +27,6 @@ import org.gradle.api.artifacts.type.ArtifactTypeDefinition; import org.gradle.api.attributes.Attribute; import org.gradle.api.plugins.JavaBasePlugin; -import org.gradle.api.provider.ProviderFactory; import org.gradle.api.tasks.Copy; import org.gradle.api.tasks.SourceSet; import org.gradle.api.tasks.SourceSetContainer; @@ -119,7 +118,6 @@ private TaskProvider setupTestTask( SourceSet testSourceSet, NamedDomainObjectProvider clusterProvider ) { - ProviderFactory providers = project.getProviders(); return project.getTasks().register(YAML_REST_TEST, StandaloneRestIntegTestTask.class, task -> { task.useCluster(clusterProvider.get()); task.setTestClassesDirs(testSourceSet.getOutput().getClassesDirs()); @@ -127,15 +125,9 @@ private TaskProvider setupTestTask( var cluster = clusterProvider.get(); var nonInputProperties = new SystemPropertyCommandLineArgumentProvider(); - nonInputProperties.systemProperty( - "tests.rest.cluster", - providers.provider(() -> String.join(",", cluster.getAllHttpSocketURI())) - ); - nonInputProperties.systemProperty( - "tests.cluster", - providers.provider(() -> String.join(",", cluster.getAllTransportPortURI())) - ); - nonInputProperties.systemProperty("tests.clustername", providers.provider(() -> cluster.getName())); + nonInputProperties.systemProperty("tests.rest.cluster", () -> String.join(",", cluster.getAllHttpSocketURI())); + nonInputProperties.systemProperty("tests.cluster", () -> String.join(",", cluster.getAllTransportPortURI())); + nonInputProperties.systemProperty("tests.clustername", () -> cluster.getName()); task.getJvmArgumentProviders().add(nonInputProperties); task.systemProperty("tests.rest.load_packaged", Boolean.FALSE.toString()); }); From 2f52b4734122b4a101fd84a77af8a20c37861a27 Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Mon, 28 Apr 2025 15:47:57 +0200 Subject: [PATCH 08/11] Remove ambigious method definitions --- .../SystemPropertyCommandLineArgumentProvider.java | 4 ---- modules/reindex/build.gradle | 10 +++++----- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java b/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java index 70be689ca637f..ea61cd1a204d2 100644 --- a/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java +++ b/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java @@ -20,10 +20,6 @@ public class SystemPropertyCommandLineArgumentProvider implements CommandLineArgumentProvider { private final Map systemProperties = new LinkedHashMap<>(); - public void systemProperty(String key, Provider value) { - systemProperties.put(key, (Supplier) () -> String.valueOf(value.get())); - } - public void systemProperty(String key, Supplier value) { systemProperties.put(key, value); } diff --git a/modules/reindex/build.gradle b/modules/reindex/build.gradle index 93333579e6f8a..adfd6921445a4 100644 --- a/modules/reindex/build.gradle +++ b/modules/reindex/build.gradle @@ -168,11 +168,11 @@ if (OS.current() == OS.WINDOWS) { tasks.named("javaRestTest").configure { dependsOn fixture - systemProperty "tests.fromOld", "true" - /* Use a closure on the string to delay evaluation until right before we - * run the integration tests so that we can be sure that the file is - * ready. */ - nonInputProperties.systemProperty "es${version}.port", fixture.map(f->f.addressAndPort) + systemProperty "tests.fromOld", "true" + /* Use a closure on the string to delay evaluation until right before we + * run the integration tests so that we can be sure that the file is + * ready. */ + nonInputProperties.systemProperty "es${version}.port", fixture.map(f->f.addressAndPort) } } } From 0f70d1a75717420c81a20ec38ffb1bfed5da162d Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Wed, 30 Apr 2025 16:43:00 +0200 Subject: [PATCH 09/11] Cleanup verification metadata --- gradle/verification-metadata.xml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 3df2bc1086e6b..8349b998bc7d8 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -991,11 +991,6 @@ - - - - - From 19825a6da36e44ddf7b7b07f441632ef85f1953b Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Wed, 30 Apr 2025 17:03:25 +0200 Subject: [PATCH 10/11] Some cleanup on unused methods --- .../internal/test/rest/CopyRestTestsTask.java | 16 ++-------------- ...ystemPropertyCommandLineArgumentProvider.java | 1 - 2 files changed, 2 insertions(+), 15 deletions(-) diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java index 033093eea99ae..2e3f443e9e043 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java @@ -56,7 +56,7 @@ public abstract class CopyRestTestsTask extends DefaultTask { private FileCollection coreConfig; private FileCollection xpackConfig; private FileCollection additionalConfig; - private SerializableFunction coreConfigToFileTree = FileCollection::getAsFileTree; + private SerializableCopyRestTestsTaskFunction coreConfigToFileTree = FileCollection::getAsFileTree; private SerializableFunction xpackConfigToFileTree = FileCollection::getAsFileTree; private SerializableFunction additionalConfigToFileTree = FileCollection::getAsFileTree; @@ -65,9 +65,6 @@ public abstract class CopyRestTestsTask extends DefaultTask { private final ProjectLayout projectLayout; private final FileSystemOperations fileSystemOperations; - @Inject - public abstract FileOperations getFileOperations(); - @Inject public CopyRestTestsTask( ProjectLayout projectLayout, @@ -85,16 +82,7 @@ public CopyRestTestsTask( } @Inject - protected abstract ProjectLayout getProjectLayout(); - - @Inject - protected abstract FileSystemOperations getFileSystemOperations(); - - @Inject - protected abstract ObjectFactory getObjectFactory(); - - @Inject - protected abstract PatternSetFactory getPatternSetFactory(); + public abstract FileOperations getFileOperations(); @Input public ListProperty getIncludeCore() { diff --git a/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java b/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java index ea61cd1a204d2..02146ee454d3c 100644 --- a/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java +++ b/build-tools/src/main/java/org/elasticsearch/gradle/test/SystemPropertyCommandLineArgumentProvider.java @@ -8,7 +8,6 @@ */ package org.elasticsearch.gradle.test; -import org.gradle.api.provider.Provider; import org.gradle.api.tasks.Input; import org.gradle.process.CommandLineArgumentProvider; From 93407ca8c190c3623f48616d447cd6ff6d0d8ac6 Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Wed, 30 Apr 2025 17:07:16 +0200 Subject: [PATCH 11/11] fix typo --- .../gradle/internal/test/rest/CopyRestTestsTask.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java index 2e3f443e9e043..d6e888e33a3d5 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/test/rest/CopyRestTestsTask.java @@ -56,7 +56,7 @@ public abstract class CopyRestTestsTask extends DefaultTask { private FileCollection coreConfig; private FileCollection xpackConfig; private FileCollection additionalConfig; - private SerializableCopyRestTestsTaskFunction coreConfigToFileTree = FileCollection::getAsFileTree; + private SerializableFunction coreConfigToFileTree = FileCollection::getAsFileTree; private SerializableFunction xpackConfigToFileTree = FileCollection::getAsFileTree; private SerializableFunction additionalConfigToFileTree = FileCollection::getAsFileTree;