-
Notifications
You must be signed in to change notification settings - Fork 176
Description
When using spectator in https://github.com/spinnaker/kork, I'd like to be able to decide what version of the aws sdk to use, potentially even if the one that spectator depends on is newer. Currently, kork defines it's spectator dependency here like:
dependencies {
constraints {
api("com.netflix.spectator:spectator-api:${versions.spectator}")
api("com.netflix.spectator:spectator-ext-aws:${versions.spectator}")
api("com.netflix.spectator:spectator-ext-gc:${versions.spectator}")
api("com.netflix.spectator:spectator-ext-jvm:${versions.spectator}")
api("com.netflix.spectator:spectator-nflx-plugin:${versions.spectator}")
api("com.netflix.spectator:spectator-reg-atlas:${versions.spectator}")
api("com.netflix.spectator:spectator-web-spring:${versions.spectator}")
api("com.netflix.spectator:spectator-reg-micrometer:${versions.spectator}")
}
}
If there were a spectator bom that kork could include via something like:
dependencies {
api(platform("com.netflix.spectator:spectator-bom:${versions.spectator}")
}
I believe that would give more control to kork over which versions of transitive dependencies to bring in. Specifically for the aws java sdk case:
dependencies {
api(platform("com.amazonaws:aws-java-sdk-bom:${versions.aws}"))
api(platform("com.netflix.spectator:spectator-bom:${versions.spectator}")
gives precedence to the aws java sdk bom because it appears first.
It could easily be that my gradle knowledge is insufficient and there is a better or easier way to handle this. I would love a hand figuring out a solution, whether it means a spectator bom or not.
Thanks much for your help.