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

fix/add rebuild capability to NESSI #313

Open
trz42 opened this issue Apr 10, 2024 · 0 comments
Open

fix/add rebuild capability to NESSI #313

trz42 opened this issue Apr 10, 2024 · 0 comments

Comments

@trz42
Copy link
Collaborator

trz42 commented Apr 10, 2024

In #311 we aimed at adding rebuild capability (as implemented in EESSI with PR 488 and PR 518) and test this for OpenMPI. However, at the moment (April 2024) we do not have access to any build instance that supports the required features: --fakeroot and user namespaces. Hence, we made #311 a draft and replaced it by #312 which adds the rebuild functionality, but we couldn't test it.

An alternative approach for rebuilding package X could be as follows:

  1. Determine directory of software under which it would be installed. Determine path to module file for the software.
  2. Bind mount a /cvmfs/REPO that is natively installed/available on the build node and bind mount empty directories on top of that for the paths of software that needs to be rebuild.
  3. Build the software as it would usually be built.
  4. Create the tarball taking the directories determined in (1) into account.
  5. Deploy the software. (deployment may still need manual intervention for replacing existing packages)

Additional work may be needed to support both the rebuilding of a software package and a change to other files. For example, #311 aimed at rebuilding OpenMPI and changing SitePackage.lua.

Strangely, #311 was merged too (by merging #312) but its changes were apparently reverted by #312. Since we have the issue #313 everything should be fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant