Implementation to jail Spack inside a user chroot using Linux namespaces#5545
Closed
TheTimmy wants to merge 1 commit intospack:developfrom
Closed
Implementation to jail Spack inside a user chroot using Linux namespaces#5545TheTimmy wants to merge 1 commit intospack:developfrom
TheTimmy wants to merge 1 commit intospack:developfrom
Conversation
… user chroot environment. Final implementation for the user chroot approach. Fixed coding style to spack coding style guide Fixed removal of the base file if an error occured
Member
|
After the interface is agreed upon, please document the usage somewhere in |
Member
Member
|
I think this is an interesting approach. |
Member
|
I guess now that we have |
Member
|
Closing the PR following the comment of @michaelkuhn If anybody wants to continue the work and discussion, feel free to reopen. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This feature support to jail Spack inside a chroot (see #5193 approach 3 for details),
but without the requirements of the pull request #5489.
This allows to find potentially missing depends_on calls.
It introduces the commands:
./spack isolate --build-environment path/to/jail/dir --tarball path/to/tarball
To create a jail for Spack and mount bind /dev, /sys and /proc to be available inside the jail.
./spack isolate --remove-environment
To unmount the mounted /dev, /sys and /proc directories.
./spack isolate --cli
To start a shell inside the jail.
To create a bootstrap environment it is possible to use an already generated tarball from OpenStack or by using mkosi. A restriction is, that the root directory of the tarball must be a directory which contains the distribution.
To generate the mount bind and chroot calls in uses namespaces.
Unfortunately it does not support the separation of the PID namespace, due to the fact, that Python cannot read C defines and structs.