Skip to content

Conversation

@climbfuji
Copy link
Collaborator

@climbfuji climbfuji commented Nov 10, 2025

Description

This PR shortens the module paths for the modules generated by spack module [tcl|lmod] refresh and spack stack setup-meta-modules. It does so by implementing a compiler- and MPI-name translation and shortening the path where the modules are generated. This is done in multiple places:

configs/common/modules_lmod.yaml
(configs/common/modules_tcl.yaml)
spack-ext/lib/jcsda-emc/spack-stack/stack/meta_modules.py

While this solution comes with a certain amount of code duplication, I consider it as the best option because any other solution would have required changes to the spack code itself. Also, we rarely make changes to these names or add new compilers and MPI providers, thus the maintenance effort is low.

While working on this, I realized that the ecmwf-atlas --> atlas translation never worked as intended, because it was missing the MPI module dependency. I checked and the spack-generated modules were named ecmwf-atlas before this PR was made (at least for tcl modules). I therefore removed this mapping, since the module name ecmwf-atlas apparently worked fine until now.

Dependencies

n/a

Issues addressed

Closes #1811

Applications affected

All

Systems affected

All

Testing

  • CI: Note whether the automatic tests (GitHub actions tests that run automatically for every commit) pass or not
    • GitHub actions CI tests pass
    • GitHub actions CI tests do not pass (provide explanation)
    • GitHub actions CI tests skipped (provide explanation if necessary)
  • New tests added: List and describe any new tests added to GitHub actions
    • ...
  • Additional testing: Add information on any additional tests conducted
    • ...

Checklist

  • This PR addresses one issue/problem/enhancement or has a very good reason for not doing so.
  • These changes have been tested on the affected systems and applications.
  • All dependency PRs/issues have been resolved and this PR can be merged.
  • All necessary updates to the documentation on readthedocs are included in this PR deferred
    • For site config updates, check in particular doc/source/PreConfiguredSites.rst and doc/source/MaintainersSection.rst
  • All necessary updates to the spack-stack wiki will be made when this PR is merged deferred

@climbfuji climbfuji self-assigned this Nov 10, 2025
@climbfuji climbfuji force-pushed the feature/shorter_modulepaths branch from 7ebf60c to 8e4514f Compare November 10, 2025 21:04
…and update spack-ext/lib/jcsda-emc/spack-stack/tests/test_setup_meta_modules.py
@climbfuji climbfuji marked this pull request as ready for review November 11, 2025 12:56
@mathomp4
Copy link
Collaborator

I'm still working on #1810 but once I confirm my latest changes, I'll try and test this next.

@climbfuji climbfuji enabled auto-merge November 12, 2025 17:57
@climbfuji climbfuji merged commit 926b8fa into JCSDA:feature/update_to_spack_v1 Nov 12, 2025
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

Update to spack v1: module file names too long for old Tcl/Tk systems

3 participants