-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add utility for verifying that version/variant/externals are respected #978
Add utility for verifying that version/variant/externals are respected #978
Conversation
63f2083
to
718a8d3
Compare
@climbfuji I decided not to put it in the main CI since I think the utility of it is more for telling an installer "hey just so you know," but I'm open to adding it. I think it would take a bit of work since when I tried it there were maybe a dozen or so packages that didn't match the configuration (but I don't know how much of that is intentional). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a handy tool, thanks for coming up with this. Two questions:
- How are variant mismatches for externals handled? I believe spack concretize just uses the variants specified for the external when it uses it, correct? (same for version)
- Would it be better to use a repetitive
-i
(ignore) flag for ignoring certain packages likeesmf
? This way it would be more consistent with theshow_duplicate_packages.py
script, and it would also be more intuitive. The current syntax is more commonly used to check for just this package, not all others except that?
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for considering my comments and suggestions!
I restarted the failed CI run and enabled auto-merge
@climbfuji cool. FYI I (finally) added the util-tests as required just now. |
Summary
This PR adds a utility for verifying the concretized environments respect the configured version (common/packages.yaml), variant (common/packages.yaml), and external (site/packages.yaml) settings.
Testing
Tested on personal machine and in util_tests.sh/CI. Will explore adding to build CI.
Applications affected
none
Systems affected
Should be useful on all systems, though as currently written, it might involve ignoring certain packages on certain systems.
Dependencies
none
Issue(s) addressed
Link the issues addressed or resolved by this PR (use
Fixes #???
for fully resolved issues)Checklist