build.gradle.kts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. plugins {
  2. id("otel.javaagent-instrumentation")
  3. }
  4. muzzle {
  5. pass {
  6. group.set("io.netty")
  7. module.set("netty-codec-http")
  8. versions.set("[4.0.0.Final,4.1.0.Final)")
  9. assertInverse.set(true)
  10. }
  11. pass {
  12. group.set("io.netty")
  13. module.set("netty-all")
  14. versions.set("[4.0.0.Final,4.1.0.Final)")
  15. excludeDependency("io.netty:netty-tcnative")
  16. assertInverse.set(true)
  17. }
  18. fail {
  19. group.set("io.netty")
  20. module.set("netty")
  21. versions.set("[,]")
  22. }
  23. }
  24. dependencies {
  25. library("io.netty:netty-codec-http:4.0.0.Final")
  26. implementation(project(":instrumentation:netty:netty-4-common:javaagent"))
  27. latestDepTestLibrary("io.netty:netty-codec-http:4.0.56.Final")
  28. }
  29. tasks {
  30. val testConnectionSpan by registering(Test::class) {
  31. filter {
  32. includeTestsMatching("Netty40ConnectionSpanTest")
  33. isFailOnNoMatchingTests = false
  34. }
  35. include("**/Netty40ConnectionSpanTest.*")
  36. jvmArgs("-Dotel.instrumentation.netty.always-create-connect-span=true")
  37. }
  38. named<Test>("test") {
  39. dependsOn(testConnectionSpan)
  40. filter {
  41. excludeTestsMatching("Netty40ConnectionSpanTest")
  42. isFailOnNoMatchingTests = false
  43. }
  44. }
  45. }
  46. // We need to force the dependency to the earliest supported version because other libraries declare newer versions.
  47. if (!(findProperty("testLatestDeps") as Boolean)) {
  48. configurations.configureEach {
  49. if (!name.contains("muzzle")) {
  50. resolutionStrategy {
  51. eachDependency {
  52. // specifying a fixed version for all libraries with io.netty' group
  53. if (requested.group == "io.netty" && requested.name != "netty-bom") {
  54. useVersion("4.0.0.Final")
  55. }
  56. }
  57. }
  58. }
  59. }
  60. }