Skip to content
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 Lmod 8 to test suite #2849

Merged
merged 6 commits into from
May 2, 2019
Merged

Add Lmod 8 to test suite #2849

merged 6 commits into from
May 2, 2019

Conversation

ocaisa
Copy link
Member

@ocaisa ocaisa commented Apr 30, 2019

No description provided.

@ocaisa
Copy link
Member Author

ocaisa commented Apr 30, 2019

8.0.6 is the last Lmod 8 release where the test suite passes, in 8.0.7 something was introduced that breaks the modulerc tests

@ocaisa
Copy link
Member Author

ocaisa commented Apr 30, 2019

Lmod introduced "extended defaults" in v8.0.7 (if Python/2.7.16 exists Python/2 is loadable even if that specific module file does not exist), I've configured the tests to disable this feature.

@boegel
Copy link
Member

boegel commented Apr 30, 2019

@ocaisa I'm not sure disabling a feature in the test setup that's enabled by default and breaks something in EasyBuild is the best way forward here...

In what way do the test fail? Are they simply not taking something into account, or are they signaling that something is broken in framework when using Lmod 8.0.7 with the "extended defaults" feature enabled?

@boegel boegel added this to the next release (3.9.1) milestone Apr 30, 2019
@ocaisa
Copy link
Member Author

ocaisa commented May 1, 2019

It breaks the modulerc test at https://github.com/easybuilders/easybuild-framework/blob/master/test/framework/module_generator.py#L390 because with extended defaults the central module also evaluated to true. Either we retain the strictness that exists in the other module tools or consider switching this particular test off for Lmod.

@boegel
Copy link
Member

boegel commented May 1, 2019

@ocaisa Thart's basically a bug in the tests, for the case where Lmod 8.0.8 or newer is configured with "extended defaults", it's not a bug in EasyBuild itself I guess (although it could lead to weird situations...).

There's probably a runtime switch we can enable to tell Lmod to not consider extended defaults when being used by EasyBuild (much like we disable the Lmod spider cache by setting $LMOD_IGNORE_CACHE to 1, see https://github.com/easybuilders/easybuild-framework/blob/master/easybuild/tools/modules.py#L1187).

So we should just figure out which magic $LMOD_* variable to define to disable the "extended default" feature of Lmod 8.0.8 at runtime, and (always) set it?

@ocaisa
Copy link
Member Author

ocaisa commented May 1, 2019

I'm for using the runtime switch, but I suspect that will be a feature request (the configure option to disable extended defaults appeared in 8.0.8 if I remember correctly from yesterday)

@ocaisa
Copy link
Member Author

ocaisa commented May 2, 2019

@boegel When tests pass this should be good to go.

@boegel
Copy link
Member

boegel commented May 2, 2019

Thanks @ocaisa!

@boegel boegel merged commit b6a23ae into easybuilders:develop May 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants