From 84c021bc978afa6d412a8324aab2ff7a9d5bea1f Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Tue, 3 Jan 2023 15:55:07 +0000 Subject: [PATCH] Upgrade to Gradle Enterprise Gradle Plugin 3.12.1 Closes gh-33672 --- buildSrc/build.gradle | 4 ++-- .../boot/build/JavaConventions.java | 15 +++++---------- .../boot/build/ConventionsPluginTests.java | 17 ++++++++--------- settings.gradle | 2 +- 4 files changed, 16 insertions(+), 22 deletions(-) diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle index 08c8a97a3c1..057afcf3b3a 100644 --- a/buildSrc/build.gradle +++ b/buildSrc/build.gradle @@ -25,12 +25,12 @@ ext { dependencies { checkstyle "io.spring.javaformat:spring-javaformat-checkstyle:${javaFormatVersion}" implementation(platform("org.springframework:spring-framework-bom:5.3.15")) - implementation("com.tngtech.archunit:archunit:1.0.0") implementation("com.fasterxml.jackson.core:jackson-databind:2.11.4") + implementation("com.gradle:gradle-enterprise-gradle-plugin:3.12.1") + implementation("com.tngtech.archunit:archunit:1.0.0") implementation("commons-codec:commons-codec:1.13") implementation("org.apache.maven:maven-embedder:3.6.2") implementation("org.asciidoctor:asciidoctor-gradle-jvm:3.3.2") - implementation("org.gradle:test-retry-gradle-plugin:1.4.1") implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:${kotlinVersion}") implementation("org.jetbrains.kotlin:kotlin-compiler-embeddable:${kotlinVersion}") implementation("org.springframework:spring-core") diff --git a/buildSrc/src/main/java/org/springframework/boot/build/JavaConventions.java b/buildSrc/src/main/java/org/springframework/boot/build/JavaConventions.java index e46d2c4180c..31f5519161b 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/JavaConventions.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/JavaConventions.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2022 the original author or authors. + * Copyright 2012-2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,6 +24,7 @@ import java.util.Set; import java.util.TreeMap; import java.util.stream.Collectors; +import com.gradle.enterprise.gradleplugin.testretry.TestRetryExtension; import io.spring.javaformat.gradle.SpringJavaFormatPlugin; import io.spring.javaformat.gradle.tasks.CheckFormat; import io.spring.javaformat.gradle.tasks.Format; @@ -45,8 +46,6 @@ import org.gradle.api.tasks.bundling.Jar; import org.gradle.api.tasks.compile.JavaCompile; import org.gradle.api.tasks.javadoc.Javadoc; import org.gradle.api.tasks.testing.Test; -import org.gradle.testretry.TestRetryPlugin; -import org.gradle.testretry.TestRetryTaskExtension; import org.springframework.boot.build.architecture.ArchitecturePlugin; import org.springframework.boot.build.classpath.CheckClasspathForProhibitedDependencies; @@ -163,16 +162,12 @@ class JavaConventions { test.setMaxHeapSize("1024M"); project.getTasks().withType(Checkstyle.class, test::mustRunAfter); project.getTasks().withType(CheckFormat.class, test::mustRunAfter); + TestRetryExtension testRetry = test.getExtensions().getByType(TestRetryExtension.class); + testRetry.getFailOnPassedAfterRetry().set(true); + testRetry.getMaxRetries().set(isCi() ? 3 : 0); }); project.getPlugins().withType(JavaPlugin.class, (javaPlugin) -> project.getDependencies() .add(JavaPlugin.TEST_RUNTIME_ONLY_CONFIGURATION_NAME, "org.junit.platform:junit-platform-launcher")); - project.getPlugins().apply(TestRetryPlugin.class); - project.getTasks().withType(Test.class, - (test) -> project.getPlugins().withType(TestRetryPlugin.class, (testRetryPlugin) -> { - TestRetryTaskExtension testRetry = test.getExtensions().getByType(TestRetryTaskExtension.class); - testRetry.getFailOnPassedAfterRetry().set(true); - testRetry.getMaxRetries().set(isCi() ? 3 : 0); - })); } private boolean isCi() { diff --git a/buildSrc/src/test/java/org/springframework/boot/build/ConventionsPluginTests.java b/buildSrc/src/test/java/org/springframework/boot/build/ConventionsPluginTests.java index 8bfd16d5867..3665e04e326 100644 --- a/buildSrc/src/test/java/org/springframework/boot/build/ConventionsPluginTests.java +++ b/buildSrc/src/test/java/org/springframework/boot/build/ConventionsPluginTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2022 the original author or authors. + * Copyright 2012-2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -54,6 +54,9 @@ class ConventionsPluginTests { this.buildFile = new File(this.projectDir, "build.gradle"); File settingsFile = new File(this.projectDir, "settings.gradle"); try (PrintWriter out = new PrintWriter(new FileWriter(settingsFile))) { + out.println("plugins {"); + out.println(" id 'com.gradle.enterprise'"); + out.println("}"); out.println("include ':spring-boot-project:spring-boot-parent'"); } File springBootParent = new File(this.projectDir, "spring-boot-project/spring-boot-parent/build.gradle"); @@ -175,8 +178,7 @@ class ConventionsPluginTests { out.println("description 'Test'"); out.println("task retryConfig {"); out.println(" doLast {"); - out.println(" println \"Retry plugin applied: ${plugins.hasPlugin('org.gradle.test-retry')}\""); - out.println(" test.retry {"); + out.println(" test.retry {"); out.println(" println \"maxRetries: ${maxRetries.get()}\""); out.println(" println \"failOnPassedAfterRetry: ${failOnPassedAfterRetry.get()}\""); out.println(" }"); @@ -184,8 +186,7 @@ class ConventionsPluginTests { out.println("}"); } assertThat(runGradle(Collections.singletonMap("CI", "true"), "retryConfig", "--stacktrace").getOutput()) - .contains("Retry plugin applied: true").contains("maxRetries: 3") - .contains("failOnPassedAfterRetry: true"); + .contains("maxRetries: 3").contains("failOnPassedAfterRetry: true"); } @Test @@ -198,8 +199,7 @@ class ConventionsPluginTests { out.println("description 'Test'"); out.println("task retryConfig {"); out.println(" doLast {"); - out.println(" println \"Retry plugin applied: ${plugins.hasPlugin('org.gradle.test-retry')}\""); - out.println(" test.retry {"); + out.println(" test.retry {"); out.println(" println \"maxRetries: ${maxRetries.get()}\""); out.println(" println \"failOnPassedAfterRetry: ${failOnPassedAfterRetry.get()}\""); out.println(" }"); @@ -207,8 +207,7 @@ class ConventionsPluginTests { out.println("}"); } assertThat(runGradle(Collections.singletonMap("CI", "local"), "retryConfig", "--stacktrace").getOutput()) - .contains("Retry plugin applied: true").contains("maxRetries: 0") - .contains("failOnPassedAfterRetry: true"); + .contains("maxRetries: 0").contains("failOnPassedAfterRetry: true"); } private BuildResult runGradle(String... args) { diff --git a/settings.gradle b/settings.gradle index b182b5240bb..5c2ccadff13 100644 --- a/settings.gradle +++ b/settings.gradle @@ -22,7 +22,7 @@ pluginManagement { } plugins { - id "com.gradle.enterprise" version "3.11.2" + id "com.gradle.enterprise" version "3.12.1" id "io.spring.ge.conventions" version "0.0.12" }