Add more tasks in Gradle build for running GradleIT in parallel
This commit is contained in:
@@ -49,16 +49,52 @@ dependencies {
|
||||
// Aapt2 from Android Gradle Plugin 3.2 and below does not handle long paths on Windows.
|
||||
val shortenTempRootName = System.getProperty("os.name")!!.contains("Windows")
|
||||
|
||||
// additional configuration in tasks.withType<Test> below
|
||||
projectTest("test", shortenTempRootName = shortenTempRootName) {}
|
||||
val isTeamcityBuild = project.kotlinBuildProperties.isTeamcityBuild
|
||||
|
||||
projectTest("testAdvanceGradleVersion", shortenTempRootName = shortenTempRootName) {
|
||||
fun Test.includeMppAndAndroid(include: Boolean) {
|
||||
if (isTeamcityBuild) {
|
||||
val mppAndAndroidTestPatterns = listOf("*Multiplatform*", "*Mpp*", "*Android*")
|
||||
val filter = if (include)
|
||||
filter.includePatterns
|
||||
else
|
||||
filter.excludePatterns
|
||||
filter.addAll(mppAndAndroidTestPatterns)
|
||||
}
|
||||
}
|
||||
|
||||
fun Test.advanceGradleVersion() {
|
||||
val gradleVersionForTests = "6.3"
|
||||
systemProperty("kotlin.gradle.version.for.tests", gradleVersionForTests)
|
||||
}
|
||||
|
||||
// additional configuration in tasks.withType<Test> below
|
||||
projectTest("test", shortenTempRootName = shortenTempRootName) {
|
||||
includeMppAndAndroid(false)
|
||||
}
|
||||
|
||||
projectTest("testAdvanceGradleVersion", shortenTempRootName = shortenTempRootName) {
|
||||
advanceGradleVersion()
|
||||
includeMppAndAndroid(false)
|
||||
}
|
||||
|
||||
|
||||
if (isTeamcityBuild) {
|
||||
projectTest("testMppAndAndroid", shortenTempRootName = shortenTempRootName) {
|
||||
includeMppAndAndroid(false)
|
||||
}
|
||||
|
||||
projectTest("testAdvanceGradleVersionMppAndAndroid", shortenTempRootName = shortenTempRootName) {
|
||||
advanceGradleVersion()
|
||||
includeMppAndAndroid(true)
|
||||
}
|
||||
}
|
||||
|
||||
tasks.named<Task>("check") {
|
||||
dependsOn("testAdvanceGradleVersion")
|
||||
if (isTeamcityBuild) {
|
||||
dependsOn("testAdvanceGradleVersionMppAndAndroid")
|
||||
dependsOn("testMppAndAndroid")
|
||||
}
|
||||
}
|
||||
|
||||
gradle.taskGraph.whenReady {
|
||||
|
||||
Reference in New Issue
Block a user