[Build] Apply test distribution plugin conditionally only if it's needed
This buildscript logic change is motivated by configuration cache incompatibility of the plugin Relates to #KT-44611
This commit is contained in:
@@ -9,13 +9,13 @@ import org.gradle.internal.os.OperatingSystem
|
||||
|
||||
|
||||
fun Test.configureTestDistribution(configure: TestDistributionExtension.() -> Unit = {}) {
|
||||
if(extensions.findByType(TestDistributionExtension::class.java) == null) return
|
||||
|
||||
val isTeamcityBuild = project.kotlinBuildProperties.isTeamcityBuild
|
||||
val testDistributionEnabled = project.findProperty("kotlin.build.test.distribution.enabled")?.toString()?.toBoolean()
|
||||
?: isTeamcityBuild
|
||||
|
||||
useJUnitPlatform()
|
||||
extensions.configure(TestDistributionExtension::class.java) {
|
||||
enabled.set(testDistributionEnabled)
|
||||
enabled.set(true)
|
||||
maxRemoteExecutors.set(20)
|
||||
if (isTeamcityBuild) {
|
||||
requirements.set(setOf("os=${OperatingSystem.current().familyName}"))
|
||||
|
||||
@@ -10,7 +10,16 @@ plugins {
|
||||
id("jps-compatible")
|
||||
id("com.github.node-gradle.node") version "3.0.1"
|
||||
id("de.undercouch.download")
|
||||
id("com.gradle.enterprise.test-distribution")
|
||||
id("com.gradle.enterprise.test-distribution") apply false
|
||||
}
|
||||
|
||||
val isTeamcityBuild = project.kotlinBuildProperties.isTeamcityBuild
|
||||
val testDistributionEnabled = project.providers.gradleProperty("kotlin.build.test.distribution.enabled")
|
||||
.forUseAtConfigurationTime().orNull?.toBoolean()
|
||||
?: isTeamcityBuild
|
||||
|
||||
if (testDistributionEnabled) {
|
||||
apply<com.gradle.enterprise.gradleplugin.testdistribution.TestDistributionPlugin>()
|
||||
}
|
||||
|
||||
node {
|
||||
|
||||
Reference in New Issue
Block a user