-
Notifications
You must be signed in to change notification settings - Fork 11
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
treat plugins as code dependencies #399
Conversation
@Yurlungur what are you thoughts? I think this will simplify things, but I admit I'll need to see a full release process of a plugin to really understand the details. But based off of our other conversations, I think this is a good route to go in. |
I think I'm supportive of this design. @rbberger when resolving a spack spec, how does this work? Does the ordering get swapped so the plugin is a dependency of singularity? |
Right. Plugin spackages need to be made build dependencies and registered as plugins. |
e8000ec
to
dab5840
Compare
@Yurlungur found one more issue due to the |
Does that mean we need to specify all available plugins in the spackage? Or can this happen "on the fly"? I.e., does this make the plugin infrastructure only useful for us? Or can others leverage it still? |
It means that plugins can be added by manipulating the singularity-eos package since they need to become a build dependencies. Either directly or via inheritance. |
So if there are other plugins out there, in order to use it'll have to be registered in our spackage. |
Ok I think this is fine. But it is a downside since it means using a plugin with spack requires more "manual" intervention. But maybe that's unavoidable. |
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.
Merge when ready.
PR Summary
This simplifies the plugin spack situation by just treating plugins like any other code dependencies.
Each plugin just has to install its source code into the spack prefix and the singularity-eos plugin needs to be registered using its name, spack package name, and the relative path to the plugins source code.
PR Checklist
make format
command after configuring withcmake
.If preparing for a new release, in addition please check the following: