Skip to content

Commit 8e77077

Browse files
authored
Update Gradle wrapper to 8.0.2 (#92751) (#95448)
- Remove custom checksum build logic in wrapper task - Adjust jdk home handling adjusting the change in behaviour in gradle. Requires providing canonical paths for provisioned jdk homes. - Fix test by add workaround to bug in configuration cache
1 parent bad3051 commit 8e77077

File tree

23 files changed

+75
-40
lines changed

23 files changed

+75
-40
lines changed
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.1-all.zip
3+
distributionSha256Sum=47a5bfed9ef814f90f8debcbbb315e8e7c654109acd224595ea39fca95c5d4da
4+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-all.zip
45
networkTimeout=10000
56
zipStoreBase=GRADLE_USER_HOME
67
zipStorePath=wrapper/dists
7-
distributionSha256Sum=518a863631feb7452b8f1b3dc2aaee5f388355cc3421bbd0275fbeadd77e84b2

build-tools-internal/src/integTest/groovy/org/elasticsearch/gradle/internal/ElasticsearchJavaModulePathPluginFuncTest.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ class ElasticsearchJavaModulePathPluginFuncTest extends AbstractJavaGradleFuncTe
2626
public static final String ES_VERSION = VersionProperties.getElasticsearch()
2727

2828
public static final String COMPILE_JAVA_CONFIG = """
29+
def sep = org.elasticsearch.gradle.OS.current() == org.elasticsearch.gradle.OS.WINDOWS ? ':' : ';'
2930
tasks.named('compileJava').configure {
3031
doLast {
31-
def sep = org.elasticsearch.gradle.OS.current() == org.elasticsearch.gradle.OS.WINDOWS ? ':' : ';'
3232
println "COMPILE_JAVA_COMPILER_ARGS " + options.allCompilerArgs.join(sep)
3333
println "COMPILE_JAVA_CLASSPATH " + classpath.asPath
3434
}

build-tools-internal/src/integTest/groovy/org/elasticsearch/gradle/internal/ElasticsearchTestBasePluginFuncTest.groovy

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,11 @@ import org.gradle.testkit.runner.TaskOutcome
1313

1414
class ElasticsearchTestBasePluginFuncTest extends AbstractGradleFuncTest {
1515

16+
def setup() {
17+
// see https://github.com/gradle/gradle/issues/24172
18+
configurationCacheCompatible = false
19+
}
20+
1621
def "can configure nonInputProperties for test tasks"() {
1722
given:
1823
file("src/test/java/acme/SomeTests.java").text = """

build-tools-internal/src/integTest/groovy/org/elasticsearch/gradle/internal/InternalBwcGitPluginFuncTest.groovy

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import org.gradle.testkit.runner.TaskOutcome
1414
class InternalBwcGitPluginFuncTest extends AbstractGitAwareGradleFuncTest {
1515

1616
def setup() {
17+
configurationCacheCompatible = false
1718
internalBuild()
1819
buildFile << """
1920
import org.elasticsearch.gradle.Version;

build-tools-internal/src/integTest/groovy/org/elasticsearch/gradle/internal/JdkDownloadPluginFuncTest.groovy

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@ class JdkDownloadPluginFuncTest extends AbstractGradleFuncTest {
3535
private static final String OPEN_JDK_VERSION = "12.0.1+99@123456789123456789123456789abcde"
3636
private static final Pattern JDK_HOME_LOGLINE = Pattern.compile("JDK HOME: (.*)")
3737

38+
def setup() {
39+
configurationCacheCompatible = false
40+
}
41+
3842
@Unroll
3943
def "jdk #jdkVendor for #platform#suffix are downloaded and extracted"() {
4044
given:
@@ -54,10 +58,11 @@ class JdkDownloadPluginFuncTest extends AbstractGradleFuncTest {
5458
}
5559
}
5660
61+
def theJdks = jdks
5762
tasks.register("getJdk") {
5863
dependsOn jdks.myJdk
5964
doLast {
60-
println "JDK HOME: " + jdks.myJdk
65+
println "JDK HOME: " + theJdks.myJdk
6166
}
6267
}
6368
"""

build-tools-internal/src/integTest/groovy/org/elasticsearch/gradle/internal/PublishPluginFuncTest.groovy

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ class PublishPluginFuncTest extends AbstractGradleFuncTest {
1818
def setup() {
1919
// required for JarHell to work
2020
subProject(":libs:elasticsearch-core") << "apply plugin:'java'"
21+
22+
configurationCacheCompatible = false
2123
}
24+
2225
def "artifacts and tweaked pom is published"() {
2326
given:
2427
buildFile << """

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/ElasticsearchJavadocPlugin.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,12 @@ public void execute(Task task) {
5959
var withShadowPlugin = project1.getPlugins().hasPlugin(ShadowPlugin.class);
6060
var compileClasspath = project.getConfigurations().getByName("compileClasspath");
6161

62+
var copiedCompileClasspath = project.getConfigurations().create("copiedCompileClasspath");
63+
copiedCompileClasspath.extendsFrom(compileClasspath);
6264
if (withShadowPlugin) {
6365
var shadowConfiguration = project.getConfigurations().getByName("shadow");
6466
var shadowedDependencies = shadowConfiguration.getAllDependencies();
65-
var nonShadowedCompileClasspath = compileClasspath.copyRecursive(
67+
var nonShadowedCompileClasspath = copiedCompileClasspath.copyRecursive(
6668
dependency -> shadowedDependencies.contains(dependency) == false
6769
);
6870
configureJavadocForConfiguration(project, false, nonShadowedCompileClasspath);

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/InternalTestArtifactExtension.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
package org.elasticsearch.gradle.internal;
1010

1111
import org.gradle.api.Project;
12+
import org.gradle.api.artifacts.Configuration;
1213
import org.gradle.api.artifacts.Dependency;
1314
import org.gradle.api.artifacts.dsl.DependencyHandler;
1415
import org.gradle.api.plugins.BasePluginExtension;
@@ -40,9 +41,18 @@ public void registerTestArtifactFromSourceSet(SourceSet sourceSet) {
4041

4142
DependencyHandler dependencies = project.getDependencies();
4243
project.getPlugins().withType(JavaPlugin.class, javaPlugin -> {
44+
Configuration apiElements = project.getConfigurations().getByName(sourceSet.getApiElementsConfigurationName());
45+
Configuration apiElementsTestArtifacts = project.getConfigurations()
46+
.create(sourceSet.getApiConfigurationName() + "TestArtifacts");
47+
apiElements.extendsFrom(apiElementsTestArtifacts);
4348
Dependency projectDependency = dependencies.create(project);
44-
dependencies.add(sourceSet.getApiElementsConfigurationName(), projectDependency);
45-
dependencies.add(sourceSet.getRuntimeElementsConfigurationName(), projectDependency);
49+
dependencies.add(apiElementsTestArtifacts.getName(), projectDependency);
50+
51+
Configuration runtimeElements = project.getConfigurations().getByName(sourceSet.getRuntimeElementsConfigurationName());
52+
Configuration runtimeElementsTestArtifacts = project.getConfigurations()
53+
.create(sourceSet.getRuntimeElementsConfigurationName() + "TestArtifacts");
54+
runtimeElements.extendsFrom(runtimeElementsTestArtifacts);
55+
dependencies.add(runtimeElementsTestArtifacts.getName(), projectDependency);
4656
});
4757
// PolicyUtil doesn't handle classifier notation well probably.
4858
// Instead of fixing PoliceUtil we stick to the pattern of changing

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/Jdk.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import org.gradle.api.tasks.TaskDependency;
1616

1717
import java.io.File;
18+
import java.io.IOException;
1819
import java.util.Iterator;
1920
import java.util.List;
2021
import java.util.regex.Matcher;
@@ -152,7 +153,11 @@ public Object getBinJavaPath() {
152153
return new Object() {
153154
@Override
154155
public String toString() {
155-
return getHomeRoot() + getPlatformBinPath();
156+
try {
157+
return new File(getHomeRoot() + getPlatformBinPath()).getCanonicalPath();
158+
} catch (IOException e) {
159+
throw new RuntimeException(e);
160+
}
156161
}
157162
};
158163
}

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/info/BuildParams.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import org.gradle.jvm.toolchain.JavaToolchainSpec;
1515

1616
import java.io.File;
17+
import java.io.IOException;
1718
import java.lang.reflect.Modifier;
1819
import java.time.ZonedDateTime;
1920
import java.util.Arrays;
@@ -177,7 +178,11 @@ public void reset() {
177178
}
178179

179180
public void setRuntimeJavaHome(File runtimeJavaHome) {
180-
BuildParams.runtimeJavaHome = requireNonNull(runtimeJavaHome);
181+
try {
182+
BuildParams.runtimeJavaHome = requireNonNull(runtimeJavaHome).getCanonicalFile();
183+
} catch (IOException e) {
184+
throw new RuntimeException(e);
185+
}
181186
}
182187

183188
public void setIsRuntimeJavaHomeSet(boolean isRutimeJavaHomeSet) {

0 commit comments

Comments
 (0)