interpolate environment for services in script checks #6916
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.
Fixes #6836
In 0.10.2 (specifically #6586 / 387b016) we added interpolation to group service blocks and centralized the logic for task environment interpolation. This wasn't also added to script checks, which caused a regression where the IDs for script checks for services w/ interpolated fields (ex. the service name) didn't match the service ID that was registered with Consul.
This changeset calls the same taskenv interpolation logic during
script_check
configuration, and adds tests to reduce the risk of future regressions by comparing the IDs of service hook and the check hook.In addition to the added unit test, I've exercised this with the following jobspec. If you run
nomad job run example.nomad
with this you'll seenginx-0
as the service name and the checks work, and if you update the value ofPROJECT_VERSION
that'll be properly reflected in the service name.cc @jorgemarey