config: use URL
method to get Nomad address for plugins
#966
+8
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
For #944 we fixed the Nomad API package so that it no longer mutated the private
url
field if previously set, which allowed reusing anapi.Config
object between clients when a unix domain socket was in use.However, the autoscaler plugins for Nomad strategy and target don't use the
api.Config
object we parse directly and instead get a map of string->string derived from that config so it can be passed over the go-plugin interface. This mapping did not account for theAddress
field being mutated when unix domain sockets are in use, so the bug was not actually fixed.Update the mapping to use the safe
URL()
method on the config, rather than reading theAddress
field.Fixes: #955
Ref: hashicorp/nomad#23785