106 lines
3.3 KiB
Plaintext
106 lines
3.3 KiB
Plaintext
plugins {
|
|
id("otel.javaagent-instrumentation")
|
|
}
|
|
|
|
muzzle {
|
|
pass {
|
|
group.set("org.springframework.kafka")
|
|
module.set("spring-kafka")
|
|
versions.set("[2.7.0,)")
|
|
assertInverse.set(true)
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
compileOnly("com.google.auto.value:auto-value-annotations")
|
|
annotationProcessor("com.google.auto.value:auto-value")
|
|
|
|
bootstrap(project(":instrumentation:kafka:kafka-clients:kafka-clients-0.11:bootstrap"))
|
|
bootstrap(project(":instrumentation:spring:spring-scheduling-3.1:bootstrap"))
|
|
implementation(project(":instrumentation:kafka:kafka-clients:kafka-clients-common:library"))
|
|
implementation(project(":instrumentation:spring:spring-kafka-2.7:library"))
|
|
|
|
library("org.springframework.kafka:spring-kafka:2.7.0")
|
|
|
|
testInstrumentation(project(":instrumentation:kafka:kafka-clients:kafka-clients-0.11:javaagent"))
|
|
testInstrumentation(project(":instrumentation:spring:spring-scheduling-3.1:javaagent"))
|
|
|
|
testImplementation(project(":instrumentation:spring:spring-kafka-2.7:testing"))
|
|
|
|
testLibrary("org.springframework.boot:spring-boot-starter-test:2.5.3")
|
|
testLibrary("org.springframework.boot:spring-boot-starter:2.5.3")
|
|
}
|
|
|
|
val latestDepTest = findProperty("testLatestDeps") as Boolean
|
|
|
|
testing {
|
|
suites {
|
|
val testNoReceiveTelemetry by registering(JvmTestSuite::class) {
|
|
dependencies {
|
|
implementation(project(":instrumentation:spring:spring-kafka-2.7:testing"))
|
|
|
|
// the "library" configuration is not recognized by the test suite plugin
|
|
if (latestDepTest) {
|
|
implementation("org.springframework.kafka:spring-kafka:+")
|
|
implementation("org.springframework.boot:spring-boot-starter-test:+")
|
|
implementation("org.springframework.boot:spring-boot-starter:+")
|
|
} else {
|
|
implementation("org.springframework.kafka:spring-kafka:2.7.0")
|
|
implementation("org.springframework.boot:spring-boot-starter-test:2.5.3")
|
|
implementation("org.springframework.boot:spring-boot-starter:2.5.3")
|
|
}
|
|
}
|
|
|
|
targets {
|
|
all {
|
|
testTask.configure {
|
|
usesService(gradle.sharedServices.registrations["testcontainersBuildService"].service)
|
|
|
|
jvmArgs("-Dotel.instrumentation.kafka.experimental-span-attributes=false")
|
|
jvmArgs("-Dotel.instrumentation.messaging.experimental.receive-telemetry.enabled=false")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
tasks {
|
|
test {
|
|
usesService(gradle.sharedServices.registrations["testcontainersBuildService"].service)
|
|
|
|
jvmArgs("-Dotel.instrumentation.kafka.experimental-span-attributes=true")
|
|
jvmArgs("-Dotel.instrumentation.messaging.experimental.receive-telemetry.enabled=true")
|
|
}
|
|
|
|
check {
|
|
dependsOn(testing.suites)
|
|
}
|
|
}
|
|
|
|
// spring 6 (which spring-kafka 3.+ uses) requires java 17
|
|
if (latestDepTest) {
|
|
otelJava {
|
|
minJavaVersionSupported.set(JavaVersion.VERSION_17)
|
|
}
|
|
}
|
|
|
|
// spring 6 uses slf4j 2.0
|
|
if (!latestDepTest) {
|
|
configurations {
|
|
listOf(
|
|
testRuntimeClasspath,
|
|
named("testNoReceiveTelemetryRuntimeClasspath"),
|
|
)
|
|
.forEach {
|
|
it.configure {
|
|
resolutionStrategy {
|
|
// requires old logback (and therefore also old slf4j)
|
|
force("ch.qos.logback:logback-classic:1.2.11")
|
|
force("org.slf4j:slf4j-api:1.7.36")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|