diff --git a/buildSrc/src/main/java/org/springframework/boot/build/AsciidoctorConventions.java b/buildSrc/src/main/java/org/springframework/boot/build/AsciidoctorConventions.java index b3f2ede194c..c70c6ea3271 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/AsciidoctorConventions.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/AsciidoctorConventions.java @@ -27,8 +27,6 @@ import org.asciidoctor.gradle.jvm.AsciidoctorJExtension; import org.asciidoctor.gradle.jvm.AsciidoctorJPlugin; import org.asciidoctor.gradle.jvm.AsciidoctorTask; import org.gradle.api.Project; -import org.gradle.api.artifacts.Configuration; -import org.gradle.api.artifacts.ConfigurationContainer; import org.gradle.api.tasks.PathSensitivity; import org.gradle.api.tasks.Sync; @@ -40,9 +38,16 @@ import org.springframework.util.StringUtils; * the plugin is applied: * * * @@ -63,13 +69,13 @@ import org.springframework.util.StringUtils; */ class AsciidoctorConventions { - private static final String EXTENSIONS_CONFIGURATION = "asciidoctorExtensions"; - private static final String ASCIIDOCTORJ_VERSION = "2.4.3"; + private static final String EXTENSIONS_CONFIGURATION_NAME = "asciidoctorExtensions"; + void apply(Project project) { project.getPlugins().withType(AsciidoctorJPlugin.class, (asciidoctorPlugin) -> { - configureDocResourcesRepository(project); + configureDocumentationDependenciesRepository(project); makeAllWarningsFatal(project); upgradeAsciidoctorJVersion(project); createAsciidoctorExtensionsConfiguration(project); @@ -78,10 +84,14 @@ class AsciidoctorConventions { }); } - private void configureDocResourcesRepository(Project project) { + private void configureDocumentationDependenciesRepository(Project project) { project.getRepositories().maven((mavenRepo) -> { - mavenRepo.setUrl(URI.create("https://repo.spring.io/snapshot")); - mavenRepo.mavenContent((mavenContent) -> mavenContent.includeGroup("io.spring.asciidoctor.backends")); + mavenRepo.setUrl(URI.create("https://repo.spring.io/release")); + mavenRepo.mavenContent((mavenContent) -> { + mavenContent.includeGroup("io.spring.asciidoctor"); + mavenContent.includeGroup("io.spring.asciidoctor.backends"); + mavenContent.includeGroup("io.spring.docresources"); + }); }); } @@ -94,20 +104,18 @@ class AsciidoctorConventions { } private void createAsciidoctorExtensionsConfiguration(Project project) { - ConfigurationContainer configurations = project.getConfigurations(); - Configuration asciidoctorExtensions = configurations.maybeCreate(EXTENSIONS_CONFIGURATION); - asciidoctorExtensions.getDependencies().add( - project.getDependencies().create("io.spring.asciidoctor.backends:spring-asciidoctor-backends:0.0.1")); - asciidoctorExtensions.getDependencies() - .add(project.getDependencies().create("org.asciidoctor:asciidoctorj-pdf:1.5.3")); - Configuration dependencyManagement = configurations.findByName("dependencyManagement"); - if (dependencyManagement != null) { - asciidoctorExtensions.extendsFrom(dependencyManagement); - } + project.getConfigurations().create(EXTENSIONS_CONFIGURATION_NAME, (configuration) -> { + project.getConfigurations().matching((candidate) -> "dependencyManagement".equals(candidate.getName())) + .all((dependencyManagement) -> configuration.extendsFrom(dependencyManagement)); + configuration.getDependencies().add(project.getDependencies() + .create("io.spring.asciidoctor.backends:spring-asciidoctor-backends:0.0.1")); + configuration.getDependencies() + .add(project.getDependencies().create("org.asciidoctor:asciidoctorj-pdf:1.5.3")); + }); } private void configureAsciidoctorTask(Project project, AbstractAsciidoctorTask asciidoctorTask) { - asciidoctorTask.configurations(EXTENSIONS_CONFIGURATION); + asciidoctorTask.configurations(EXTENSIONS_CONFIGURATION_NAME); configureCommonAttributes(project, asciidoctorTask); configureOptions(asciidoctorTask); asciidoctorTask.baseDirFollowsSourceDir(); diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle b/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle index 96711b0daf3..91759528ed4 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle +++ b/spring-boot-project/spring-boot-actuator-autoconfigure/build.gradle @@ -168,7 +168,6 @@ task dependencyVersions(type: org.springframework.boot.build.constraints.Extract tasks.withType(org.asciidoctor.gradle.jvm.AbstractAsciidoctorTask) { dependsOn dependencyVersions - baseDirFollowsSourceDir() doFirst { def versionConstraints = dependencyVersions.versionConstraints def integrationVersion = versionConstraints["org.springframework.integration:spring-integration-core"] diff --git a/spring-boot-project/spring-boot-docs/build.gradle b/spring-boot-project/spring-boot-docs/build.gradle index d3e3a7d1f08..1110634080e 100644 --- a/spring-boot-project/spring-boot-docs/build.gradle +++ b/spring-boot-project/spring-boot-docs/build.gradle @@ -17,16 +17,6 @@ configurations { testSlices } -repositories { - maven { - url "https://repo.spring.io/release" - mavenContent { - includeGroup "io.spring.asciidoctor" - includeGroup "io.spring.asciidoctor.backends" - } - } -} - jar { enabled = false } @@ -224,7 +214,6 @@ task documentConfigurationProperties(type: org.springframework.boot.build.contex tasks.withType(org.asciidoctor.gradle.jvm.AbstractAsciidoctorTask) { dependsOn dependencyVersions - baseDirFollowsSourceDir() asciidoctorj { fatalWarnings = ['^((?!successfully validated).)*$'] } diff --git a/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/build.gradle b/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/build.gradle index 3341dc8b816..5f904bda588 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/build.gradle +++ b/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/build.gradle @@ -13,16 +13,6 @@ configurations { documentation } -repositories { - maven { - url "https://repo.spring.io/release" - mavenContent { - includeGroup "io.spring.asciidoctor" - includeGroup "io.spring.asciidoctor.backends" - } - } -} - dependencies { asciidoctorExtensions("io.spring.asciidoctor:spring-asciidoctor-extensions-section-ids")