Skip to content

Commit

Permalink
Extract kover configurations into a build-logic plugin
Browse files Browse the repository at this point in the history
  • Loading branch information
nashcft committed Sep 6, 2023
1 parent 4001add commit f35f299
Show file tree
Hide file tree
Showing 12 changed files with 13 additions and 37 deletions.
24 changes: 1 addition & 23 deletions app-android/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ plugins {
id("droidkaigi.primitive.android.crashlytics")
id("droidkaigi.primitive.detekt")
id("droidkaigi.primitive.android.roborazzi")
id("droidkaigi.primitive.kover")
id("droidkaigi.primitive.kover.entrypoint")
id("droidkaigi.primitive.android.osslicenses")
}

Expand Down Expand Up @@ -116,25 +116,3 @@ dependencies {
implementation(libs.firebaseDynamicLinks)
testImplementation(projects.core.testing)
}

// Dependency configuration to aggregate Kover coverage reports
// TODO: extract report aggregation to build-logic
dependencies {
kover(projects.appIosShared)

kover(projects.feature.about)
kover(projects.feature.contributors)
kover(projects.feature.floorMap)
kover(projects.feature.main)
kover(projects.feature.sessions)
kover(projects.feature.sponsors)
kover(projects.feature.staff)
kover(projects.feature.achievements)

kover(projects.core.common)
kover(projects.core.data)
kover(projects.core.designsystem)
kover(projects.core.model)
kover(projects.core.testing)
kover(projects.core.ui)
}
1 change: 0 additions & 1 deletion app-ios-shared/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.apple.XCFramework
plugins {
id("droidkaigi.primitive.kmp")
id("droidkaigi.primitive.kmp.ios")
id("droidkaigi.primitive.kover")
}

kotlin {
Expand Down
6 changes: 3 additions & 3 deletions build-logic/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -94,9 +94,9 @@ gradlePlugin {
id = "droidkaigi.primitive.kmp.serialization"
implementationClass = "io.github.droidkaigi.confsched2023.primitive.KotlinSerializationPlugin"
}
register("kover") {
id = "droidkaigi.primitive.kover"
implementationClass = "io.github.droidkaigi.confsched2023.primitive.KoverPlugin"
register("koverEntryPoint") {
id = "droidkaigi.primitive.kover.entrypoint"
implementationClass = "io.github.droidkaigi.confsched2023.primitive.KoverEntryPointPlugin"
}
register("detekt") {
id = "droidkaigi.primitive.detekt"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ class AndroidFeaturePlugin : Plugin<Project> {
apply("droidkaigi.primitive.android.compose")
apply("droidkaigi.primitive.android.hilt")
apply("droidkaigi.primitive.android.roborazzi")
apply("droidkaigi.primitive.kover")
apply("droidkaigi.primitive.detekt")
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,17 @@ import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.kotlin.dsl.configure

class KoverPlugin : Plugin<Project> {
class KoverEntryPointPlugin : Plugin<Project> {
override fun apply(target: Project) {
val koverPlugin = "org.jetbrains.kotlinx.kover"
with(target) {
pluginManager.apply("org.jetbrains.kotlinx.kover")
pluginManager.apply(koverPlugin)

rootProject.subprojects {
if (this@subprojects.name == target.name) return@subprojects
this@subprojects.pluginManager.apply(koverPlugin)
target.dependencies.add("kover", this@subprojects)
}

configure<KoverReportExtension> {
filters {
Expand Down
1 change: 0 additions & 1 deletion core/common/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ plugins {
id("droidkaigi.primitive.kmp.android")
id("droidkaigi.primitive.kmp.ios")
id("droidkaigi.primitive.kmp.android.hilt")
id("droidkaigi.primitive.kover")
id("droidkaigi.primitive.detekt")
}

Expand Down
1 change: 0 additions & 1 deletion core/data/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ plugins {
id("droidkaigi.primitive.detekt")
id("droidkaigi.primitive.kmp.ktorfit")
id("droidkaigi.primitive.kmp.serialization")
id("droidkaigi.primitive.kover")
}

android.namespace = "io.github.droidkaigi.confsched2023.core.data"
Expand Down
1 change: 0 additions & 1 deletion core/designsystem/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ plugins {
id("droidkaigi.primitive.kmp.android.hilt")
id("droidkaigi.primitive.detekt")
id("droidkaigi.primitive.kmp.android.showkase")
id("droidkaigi.primitive.kover")
}

android.namespace = "io.github.droidkaigi.confsched2023.core.designsystem"
Expand Down
1 change: 0 additions & 1 deletion core/model/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ plugins {
id("droidkaigi.primitive.kmp")
id("droidkaigi.primitive.kmp.android")
id("droidkaigi.primitive.kmp.ios")
id("droidkaigi.primitive.kover")
id("droidkaigi.primitive.detekt")
}

Expand Down
1 change: 0 additions & 1 deletion core/testing/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ plugins {
id("droidkaigi.primitive.android.kotlin")
id("droidkaigi.primitive.android.compose")
id("droidkaigi.primitive.android.hilt")
id("droidkaigi.primitive.kover")
id("droidkaigi.primitive.detekt")
}

Expand Down
1 change: 0 additions & 1 deletion core/ui/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ plugins {
id("droidkaigi.primitive.kmp.ios")
id("droidkaigi.primitive.kmp.compose")
id("droidkaigi.primitive.kmp.android.hilt")
id("droidkaigi.primitive.kover")
id("droidkaigi.primitive.detekt")
}

Expand Down
1 change: 0 additions & 1 deletion feature/contributors/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ plugins {
id("droidkaigi.primitive.kmp.android.hilt")
id("droidkaigi.primitive.kmp.ios")
id("droidkaigi.primitive.kmp.compose")
id("droidkaigi.primitive.kover")
}

android.namespace = "io.github.droidkaigi.confsched2023.feature.contributors"
Expand Down

0 comments on commit f35f299

Please sign in to comment.