-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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 documentation for chaining Spack instances #11152
Conversation
…installed locally and upstream, and usage of upstream external packages
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 documenting this! This should be very useful for how we use Spack on our cluster. I found a few minor typos (see comments).
|
||
There are two requirements to use the modules created by an upstream Spack | ||
instance: firstly the upstream instance must do a ``spack module tcl refresh``, | ||
which generates an index file that maps installed packages to their modules; |
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 probably unrelated to this PR but would it not make more sense to generate/update the index whenever a module is generated instead of forcing users to refresh them?
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.
It would. I suppose I originally didn't want to do the extra work in a Spack instance if it wasn't being used as an upstream, but it's not a lot of work.
It might be worth adding a note that SPACK settings like compiler.yaml or packages.yaml are not inherited from the upstream but only the packages installed by upstream. Thus, users may need to add compilers again fist and they willnot (automatically) get special settings for e.g. openmpi defined in the sysadmin's SPACK instance. |
#11152 added documentation for #8772 but some details were based on an earlier implementation that had changed by the time #8772 was merged. In particular, #11152 mentioned that upstream Spack instances were configured in config.yaml, when in fact they should be placed in a separate upstreams.yaml config file; this PR updates the documentation accordingly.
This updates https://spack.readthedocs.io/en/latest/ to add documentation on the feature added in #8772, which allows a Spack instance to point to another Spack instance to use the packages installed there.