plugins { alias(libs.plugins.nohttp) alias(libs.plugins.nexusPublish) id("junitbuild.base-conventions") id("junitbuild.build-metadata") id("junitbuild.dependency-update-check") id("junitbuild.jacoco-aggregation-conventions") id("junitbuild.temp-maven-repo") } description = "JUnit 5" val license by extra(License( name = "Eclipse Public License v2.0", url = uri("https://www.eclipse.org/legal/epl-v20.html"), headerFile = layout.projectDirectory.file("gradle/config/spotless/eclipse-public-license-2.0.java") )) val platformProjects by extra(listOf( projects.junitPlatformCommons, projects.junitPlatformConsole, projects.junitPlatformConsoleStandalone, projects.junitPlatformEngine, projects.junitPlatformJfr, projects.junitPlatformLauncher, projects.junitPlatformReporting, projects.junitPlatformRunner, projects.junitPlatformSuite, projects.junitPlatformSuiteApi, projects.junitPlatformSuiteCommons, projects.junitPlatformSuiteEngine, projects.junitPlatformTestkit ).map { it.dependencyProject }) val jupiterProjects by extra(listOf( projects.junitJupiter, projects.junitJupiterApi, projects.junitJupiterEngine, projects.junitJupiterMigrationsupport, projects.junitJupiterParams ).map { it.dependencyProject }) val vintageProjects by extra(listOf( projects.junitVintageEngine.dependencyProject )) val mavenizedProjects by extra(platformProjects + jupiterProjects + vintageProjects) val modularProjects by extra(mavenizedProjects - listOf(projects.junitPlatformConsoleStandalone.dependencyProject)) dependencies { (modularProjects + listOf(projects.platformTests.dependencyProject)).forEach { jacocoAggregation(project(it.path)) } } nexusPublishing { packageGroup = "org.junit" repositories { sonatype() } } nohttp { source.exclude("**/.gradle/**", "gradle/plugins/**/build/**", "buildSrc/build/**") } tasks.checkstyleNohttp { notCompatibleWithConfigurationCache("https://github.com/spring-io/nohttp/issues/61") }