From ec09d3c1e4e5e0c399a984e862e9a51c4661de8d Mon Sep 17 00:00:00 2001 From: Vyacheslav Gerasimov Date: Wed, 14 Sep 2022 21:00:59 +0200 Subject: [PATCH] Build: Prioritize `gradle.integration.tests.split.tasks` property To allow disabling task splitting on TeamCity --- .../build.gradle.kts | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle.kts index 93a0478ed57..74662496f06 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle.kts +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle.kts @@ -92,13 +92,9 @@ dependencies { // Aapt2 from Android Gradle Plugin 3.2 and below does not handle long paths on Windows. val shortenTempRootName = project.providers.systemProperty("os.name").forUseAtConfigurationTime().get().contains("Windows") -val isTeamcityBuild = project.kotlinBuildProperties.isTeamcityBuild || - try { - project.providers.gradleProperty("gradle.integration.tests.split.tasks").forUseAtConfigurationTime().orNull - ?.toBoolean() ?: false - } catch (_: Exception) { - false - } +val splitGradleIntegrationTestTasks = + project.providers.gradleProperty("gradle.integration.tests.split.tasks").forUseAtConfigurationTime().orNull?.toBoolean() + ?: project.kotlinBuildProperties.isTeamcityBuild tasks.withType().configureEach { kotlinOptions.freeCompilerArgs += "-opt-in=kotlin.io.path.ExperimentalPathApi" @@ -120,7 +116,7 @@ fun Test.includeNative(include: Boolean) = includeTestsWithPattern(include) { } fun Test.includeTestsWithPattern(include: Boolean, patterns: (MutableSet).() -> Unit) { - if (isTeamcityBuild) { + if (splitGradleIntegrationTestTasks) { val filter = if (include) filter.includePatterns else @@ -175,7 +171,7 @@ projectTest( includeNative(false) } -if (isTeamcityBuild) { +if (splitGradleIntegrationTestTasks) { projectTest( "testNative", shortenTempRootName = shortenTempRootName, @@ -303,7 +299,7 @@ val androidTestsTask = tasks.register("kgpAndroidTests") { tasks.named("check") { dependsOn("testAdvanceGradleVersion") dependsOn(jvmTestsTask, jsTestsTask, nativeTestsTask, daemonsTestsTask, otherPluginsTestTask, mppTestsTask, androidTestsTask) - if (isTeamcityBuild) { + if (splitGradleIntegrationTestTasks) { dependsOn("testAdvanceGradleVersionMppAndAndroid") dependsOn("testMppAndAndroid") dependsOn("testNative")