-
Notifications
You must be signed in to change notification settings - Fork 202
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
Run unit tests on an updated versions of Modules: v4.5.3 + v5.3.1 #4415
Conversation
b4e2c2f
to
ae47402
Compare
I have disabled "test_toy_toy" when Environment Modules tool is used as the test produces an inconsitent environment. "test_toy_toy" test generates two versions of "toy" module. Both modules express a reflexive conflict (against "toy") and toy/0.0-two loads toy/0.0-one. As these two modules share the same name ( Environment Modules version 4.2 (and above) detects this inconsistency and raise an error unless I am not fully satisfied with the solution of disabling this "test_toy_toy" test for EnvironmentModules but it seemed to be the more pragmatic way to solve this. Another solution would be to rename the second software "toy_toy", but it requires some changes on the test and duplication of files in the repository. It may not be worth it. |
e6cf639
to
12e6154
Compare
12e6154
to
877f3ce
Compare
@xdelaruelle Can you also rebase this, to make sure the recently merged PRs pass with v4.5.3? Should we (also?) test with v5.x? |
Of course, I will do that in the coming days, taking time to correctly handle
We should, especially to test to cache build part. I will add a commit on this PR to also test against Modules 5.3 (version shipped on EL9) |
Environment Modules was updated on EL8 from version 4.1.4 to version 4.5.2+patches which can be assimilated to version 4.5.3. Seems interesting to update the modules4 version used in unit_tests CI workflow to match Environment Modules version found in EL8.
test_cray_reset and test_independence tests successively load all Cray* modules. One Cray* module does not unload other Cray* modules loaded which give an inconsistent environment. Environment Modules tool version 4.2 and above does not allow setting up an inconsistent environment without --force option set. To fix test_cray_reset and test_independence tests for Environment Modules tool, environment is purged between each toolchain setup.
It seems interesting to also test Modules 5, especially that a lot of changes are introduced compared to Modules 4. Some of these features are now supported by EnvironmentModules framework's class. Use Environment Modules 5.3 as this is version currently shipped on EL9 systems.
"test_toy_toy" test was generating two versions of "toy" module. Both modules expressed a reflexive conflict (against "toy") and toy/0.0-two loaded toy/0.0-one. As these two modules shared the same name ("toy") and due to the reflexive conflict they express, environment obtained when loading toy/0.0-two is inconsistent as it tries to load toy/0.0-one. Environment Modules version 4.2 (and above) detects this inconsistency and raise an error unless --force option is set. "test_toy_toy" test is adapted to build a "toy2" module for "toy2" easyconfig.
877f3ce
to
7cc7cfd
Compare
7cc7cfd
to
55d7c9f
Compare
55d7c9f
to
34ef6d5
Compare
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.
lgtm
Environment Modules was updated on EL8 from version 4.1.4 to version 4.5.2+patches which can be assimilated to version 4.5.3.
Seems interesting to update the modules4 version used in unit_tests CI workflow to match Environment Modules version found in EL8.