Skip to content

Make sure that software installation prefix exists for site installations - #340

Merged
casparvl merged 6 commits into
EESSI:mainfrom
bedroge:site_builds_mkdir_prefix
Nov 3, 2026
Merged

casparvl merged 6 commits into
EESSI:mainfrom
bedroge:site_builds_mkdir_prefix

Conversation

@bedroge

@bedroge bedroge commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Currently site installations seem to fail when building for a new CPU target, see EESSI/dev.eessi.io-riscv#136. This will hopefully solve it by creating the installation prefix, which should ensure that the EESSI module will not error out.

bedroge added a commit to bedroge/software-layer that referenced this pull request Nov 3, 2026
@bedroge

bedroge commented Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

Tested in EESSI/dev.eessi.io-riscv#136. Initially it already worked, but still tried to create some wrong paths as well:

mkdir: created directory '/cvmfs/dev.eessi.io/riscv/versions/2025.06-001/software/linux/riscv64/spacemit'
mkdir: created directory '/cvmfs/dev.eessi.io/riscv/versions/2025.06-001/software/linux/riscv64/spacemit/x60'
mkdir: created directory '/cvmfs/dev.eessi.io/riscv/versions/2025.06-001/software/linux/riscv64/spacemit/x60/modules'
mkdir: created directory '/cvmfs/dev.eessi.io/riscv/versions/2025.06-001/software/linux/riscv64/spacemit/x60/software'
mkdir: created directory '/cvmfs/dev.eessi.io/versions'
mkdir: created directory '/cvmfs/dev.eessi.io/versions/2025.06-001'
mkdir: created directory '/cvmfs/dev.eessi.io/versions/2025.06-001/software'
mkdir: created directory '/cvmfs/dev.eessi.io/versions/2025.06-001/software/linux'
mkdir: created directory '/cvmfs/dev.eessi.io/versions/2025.06-001/software/linux/riscv64'
mkdir: created directory '/cvmfs/dev.eessi.io/versions/2025.06-001/software/linux/riscv64/spacemit'
mkdir: created directory '/cvmfs/dev.eessi.io/versions/2025.06-001/software/linux/riscv64/spacemit/x60'
mkdir: created directory '/cvmfs/dev.eessi.io/versions/2025.06-001/software/linux/riscv64/spacemit/x60//modules'
mkdir: created directory '/cvmfs/dev.eessi.io/versions/2025.06-001/software/linux/riscv64/spacemit/x60//modules/all'

Fixed in 6a4f0ec by adding square brackets to that check. Confirmed by doing another build (EESSI/dev.eessi.io-riscv#136 (comment)) and that showed:

mkdir: created directory '/cvmfs/dev.eessi.io/riscv/versions/2025.06-001/software/linux/riscv64/spacemit'
mkdir: created directory '/cvmfs/dev.eessi.io/riscv/versions/2025.06-001/software/linux/riscv64/spacemit/x60'
mkdir: created directory '/cvmfs/dev.eessi.io/riscv/versions/2025.06-001/software/linux/riscv64/spacemit/x60/modules'
mkdir: created directory '/cvmfs/dev.eessi.io/riscv/versions/2025.06-001/software/linux/riscv64/spacemit/x60/software'

Also used EESSI_SITE_SOFTWARE_PREFIX instead of EESSI_CVMFS_REPO_OVERRIDE (in 0a53860) for constructing the software installation prefix, to solve:

Lmod file '/cvmfs/dev.eessi.io/versions/2025.06-001/software/linux/riscv64/spacemit/x60/.lmod/lmodrc.lua' does not exist yet; creating it...
python3 is /cvmfs/software.eessi.io/versions/2025.06/compat/linux/riscv64/usr/bin/python3
ERROR: Prefix directory /cvmfs/dev.eessi.io/versions/2025.06-001/software/linux/riscv64/spacemit/x60 does not exist!

Finally, tested with a regular build in EESSI/software-layer#1903 (comment), which still worked fine.

@bedroge
bedroge marked this pull request as ready for review November 3, 2026 16:21

@casparvl casparvl left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use of EESSI_SITE_SOFTWARE_PREFIX_BACKUP isn't super elegant, but I guess we have no other choice. Also, the test build at EESSI/software-layer#1903 (comment) doesn't use the latest commit in this PR. However, I checked and the subsequent two commits only affect things inside if-statements directly specific to site builds, so to speak with @ocaisa : I'll close my eyes to this and approve the change. Agreed with @bedroge that he'll buy everyone a beer if this breaks it.

On the whole, I think this is a good fix to something we overlooked when first implementing the site-building functionality. Thanks @bedroge

@casparvl
casparvl merged commit d001907 into EESSI:main Nov 3, 2026
121 checks passed
@bedroge
bedroge deleted the site_builds_mkdir_prefix branch November 3, 2026 16:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants