39 lines
1.3 KiB
Plaintext
39 lines
1.3 KiB
Plaintext
plugins {
|
|
id("otel.java-conventions")
|
|
}
|
|
|
|
val instrumentationProjectTest = tasks.named("test")
|
|
|
|
// batching up the muzzle tasks alphabetically into 4 chunks
|
|
// to split them up into separate CI jobs (but not too many CI job)
|
|
val instrumentationProjectMuzzle = listOf(
|
|
tasks.create("muzzle1"),
|
|
tasks.create("muzzle2"),
|
|
tasks.create("muzzle3"),
|
|
tasks.create("muzzle4"),
|
|
)
|
|
|
|
var counter = 0
|
|
subprojects {
|
|
val subProj = this
|
|
plugins.withId("java") {
|
|
instrumentationProjectTest.configure {
|
|
dependsOn(subProj.tasks.named("test"))
|
|
}
|
|
|
|
// this only exists to make Intellij happy since it doesn't (currently at least) understand our
|
|
// inclusion of this artifact inside :testing-common
|
|
dependencies {
|
|
compileOnly(project(":testing:armeria-shaded-for-testing", configuration = "shadow"))
|
|
testCompileOnly(project(":testing:armeria-shaded-for-testing", configuration = "shadow"))
|
|
}
|
|
}
|
|
|
|
plugins.withId("io.opentelemetry.instrumentation.muzzle-check") {
|
|
// relying on predictable ordering of subprojects
|
|
// (see https://docs.gradle.org/current/dsl/org.gradle.api.Project.html#N14CB4)
|
|
// since we are splitting these muzzleX tasks across different github action jobs
|
|
instrumentationProjectMuzzle[counter++ % 4].dependsOn(subProj.tasks.named("muzzle"))
|
|
}
|
|
}
|