-
Notifications
You must be signed in to change notification settings - Fork 51
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
consider running "unset MODULEPATH" as part of EESSI initialization procedure #775
Comments
I'd vote for not doing this by default, but make it configurable through an environment variable. Something like
That way, you can opt to only use this on systems where it is really needed. That's probably the minority, plus it means we don't change current (default) behavior. Also, as you said, cleaning the modulepath is quite aggressive, I wouldn't like that as a user if this happened by default - even if one could argue that it might not be a great idea to mix local & EESSI modules (except for |
I also don't think it should be necessary to clean out the MODULEPATH, but to avoid bad user experiences that we have already seen I think it should be done by default. We can provide an environment variable like The general approach though would be to work with sites supporting EESSI to figure out best practice. My suggestion with respect to that would be:
A negative side of this is that we forcing people in the direction of adopting Lmod, but of course people can always contribute to help us figure out a way around even that. |
Actually, for Lmod |
I wouldn't purge, since then at least Lmod will print a warning that modules that were loaded are no longer active after doing a hard set of In our case, it would have to be a
I guess you could argue both ways w.r.t. hard setting I guess we should aim for what is most likely to produce the best user experience (i.e. a working EESSI environment). For the HPC-UGent systems, it would be a problem: the So for this particular use case, the proposed
When the EESSI init script or module hard sets There may be a feature request here for Lmod: if the path to loaded sticky modules disappears from |
I can see
working and being quite flexible. It's also an active setting, so as an admin you are going to read up on the consequences. Wherever the EESSI module itself is would also need to remain in view (but you can figure that out through introspection functions, hopefully this will also work in the case of symlinks). So at UGent, if you symlinked |
What about where Lmod itself is coming from ? I am assuming EESSI provides its own Lmod ? The version of Lmod can be something that needs to be handled. We have many modules that have features supported only since specific versions of Lmod, and which are shielded by if/else on the Lmod version. Also, assuming a site uses Lmod (regardless of EESSI), Lmod has a "priority" feature which may be useful here. I would say MODULEPATH should not be messed with directly, but rather through Lmod, with the
|
On some systems, for example the Vienna Scientific Cluster (VSC) that was used for the EESSI introductory webinar on 4 Oct 2024, keeping the existing
$MODULEPATH
causes problems after initializing up the EESSI environment.We should consider running
unset MODULEPATH
as a part of our initialization procedure, but that's a pretty aggressive move, and it may cause problems on some system, in particular those where one or more modules are loaded by default at login, since unsetting$MODULEPATH
would result in unloading those modules.That's the case on our systems at UGent:
The text was updated successfully, but these errors were encountered: