build.gradle.kts 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. plugins {
  2. id("otel.javaagent-instrumentation")
  3. }
  4. muzzle {
  5. pass {
  6. group.set("co.elastic.clients")
  7. module.set("elasticsearch-java")
  8. versions.set("[7.16,7.17.20)") // 7.17.20+ has native, on-by-default opentelemetry instrumentation
  9. }
  10. pass {
  11. group.set("co.elastic.clients")
  12. module.set("elasticsearch-java")
  13. versions.set("[8.0.0,8.10)") // 8.10+ has native, on-by-default opentelemetry instrumentation
  14. }
  15. fail {
  16. group.set("co.elastic.clients")
  17. module.set("elasticsearch-java")
  18. versions.set("(,7.16)")
  19. }
  20. fail {
  21. group.set("co.elastic.clients")
  22. module.set("elasticsearch-java")
  23. versions.set("[7.17.20,8.0.0)")
  24. }
  25. fail {
  26. group.set("co.elastic.clients")
  27. module.set("elasticsearch-java")
  28. versions.set("[8.10,)")
  29. }
  30. }
  31. dependencies {
  32. library("co.elastic.clients:elasticsearch-java:7.16.0")
  33. implementation(project(":instrumentation:elasticsearch:elasticsearch-rest-common:javaagent"))
  34. testInstrumentation(project(":instrumentation:elasticsearch:elasticsearch-rest-7.0:javaagent"))
  35. testInstrumentation(project(":instrumentation:apache-httpclient:apache-httpclient-4.0:javaagent"))
  36. testInstrumentation(project(":instrumentation:apache-httpasyncclient-4.1:javaagent"))
  37. testImplementation("com.fasterxml.jackson.core:jackson-databind:2.14.2")
  38. testImplementation("org.testcontainers:elasticsearch")
  39. latestDepTestLibrary("co.elastic.clients:elasticsearch-java:7.17.19")
  40. }
  41. val latestDepTest = findProperty("testLatestDeps") as Boolean
  42. testing {
  43. suites {
  44. val version8Test by registering(JvmTestSuite::class) {
  45. dependencies {
  46. sources {
  47. java {
  48. setSrcDirs(listOf("src/test/java"))
  49. }
  50. resources {
  51. setSrcDirs(listOf("src/test/resources"))
  52. }
  53. }
  54. implementation("com.fasterxml.jackson.core:jackson-databind:2.14.2")
  55. implementation("org.testcontainers:elasticsearch")
  56. if (latestDepTest) {
  57. // 8.10+ has native, on-by-default opentelemetry instrumentation
  58. implementation("co.elastic.clients:elasticsearch-java:8.9.+")
  59. } else {
  60. implementation("co.elastic.clients:elasticsearch-java:8.0.0")
  61. }
  62. }
  63. }
  64. }
  65. }
  66. tasks {
  67. test {
  68. usesService(gradle.sharedServices.registrations["testcontainersBuildService"].service)
  69. }
  70. check {
  71. dependsOn(testing.suites)
  72. }
  73. }
  74. tasks.withType<Test>().configureEach {
  75. jvmArgs("-Dotel.instrumentation.common.experimental.controller-telemetry.enabled=true")
  76. }