Deduplicate environment variables in CI #14351
Merged
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.
While working on #13583 I initially made some simple mistakes when defining environment variables for CI jobs, and realized that we can do it better to make such mistakes less likely.
This PR is a simple refactor to make jobs extend the set of environment variables defined in base image definitions instead of redefining them.
Details
Currently, when we want an extra variable for a job, but still need the variables we defined for the base image, we repeat them like this:
This is error-prone and verbose. In many cases we don't even repeat variables a job does not use, to make the job definition shorter.
The PR replaces this convention with reuse of environment dicts via YAML anchors like this: