build.gradle.kts 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. import net.ltgt.gradle.errorprone.errorprone
  2. plugins {
  3. id("org.xbib.gradle.plugin.jflex")
  4. id("otel.java-conventions")
  5. id("otel.animalsniffer-conventions")
  6. id("otel.jacoco-conventions")
  7. id("otel.japicmp-conventions")
  8. id("otel.publish-conventions")
  9. id("otel.jmh-conventions")
  10. }
  11. sourceSets {
  12. main {
  13. java {
  14. // gradle-jflex-plugin has a bug in that it always looks for the last srcDir in this source
  15. // set to generate into. By default it would be the src/main directory itself.
  16. srcDir("$buildDir/generated/sources/jflex")
  17. }
  18. }
  19. }
  20. group = "io.opentelemetry.instrumentation"
  21. dependencies {
  22. api("io.opentelemetry:opentelemetry-api")
  23. api("io.opentelemetry:opentelemetry-semconv")
  24. implementation("org.slf4j:slf4j-api")
  25. compileOnly("com.google.auto.value:auto-value-annotations")
  26. annotationProcessor("com.google.auto.value:auto-value")
  27. testImplementation(project(":testing-common"))
  28. testImplementation("org.mockito:mockito-core")
  29. testImplementation("org.mockito:mockito-junit-jupiter")
  30. testImplementation("org.assertj:assertj-core")
  31. testImplementation("org.awaitility:awaitility")
  32. testImplementation("io.opentelemetry:opentelemetry-sdk-metrics")
  33. testImplementation("io.opentelemetry:opentelemetry-sdk-testing")
  34. }
  35. tasks {
  36. named<Checkstyle>("checkstyleMain") {
  37. exclude("**/concurrentlinkedhashmap/**")
  38. }
  39. sourcesJar {
  40. dependsOn("generateJflex")
  41. }
  42. val testStatementSanitizerConfig by registering(Test::class) {
  43. filter {
  44. includeTestsMatching("StatementSanitizationConfigTest")
  45. isFailOnNoMatchingTests = false
  46. }
  47. include("**/StatementSanitizationConfigTest.*")
  48. jvmArgs("-Dotel.instrumentation.common.db-statement-sanitizer.enabled=false")
  49. }
  50. test {
  51. dependsOn(testStatementSanitizerConfig)
  52. filter {
  53. excludeTestsMatching("StatementSanitizationConfigTest")
  54. isFailOnNoMatchingTests = false
  55. }
  56. }
  57. // TODO this should live in jmh-conventions
  58. named<JavaCompile>("jmhCompileGeneratedClasses") {
  59. options.errorprone {
  60. isEnabled.set(false)
  61. }
  62. }
  63. }