summaryrefslogtreecommitdiff
path: root/src/buildstream/sandbox/_sandboxbwrap.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildstream/sandbox/_sandboxbwrap.py')
-rw-r--r--src/buildstream/sandbox/_sandboxbwrap.py44
1 files changed, 8 insertions, 36 deletions
diff --git a/src/buildstream/sandbox/_sandboxbwrap.py b/src/buildstream/sandbox/_sandboxbwrap.py
index d17139293..0e114d9f1 100644
--- a/src/buildstream/sandbox/_sandboxbwrap.py
+++ b/src/buildstream/sandbox/_sandboxbwrap.py
@@ -68,9 +68,7 @@ class SandboxBwrap(Sandbox):
cls._die_with_parent_available = False
cls._json_status_available = False
cls._dummy_reasons += ["Bubblewrap not found"]
- raise SandboxError(
- " and ".join(cls._dummy_reasons), reason="unavailable-local-sandbox"
- ) from Error
+ raise SandboxError(" and ".join(cls._dummy_reasons), reason="unavailable-local-sandbox") from Error
bwrap_version = _site.get_bwrap_version()
@@ -97,18 +95,7 @@ class SandboxBwrap(Sandbox):
try:
whoami = utils.get_host_tool("whoami")
output = subprocess.check_output(
- [
- bwrap,
- "--ro-bind",
- "/",
- "/",
- "--unshare-user",
- "--uid",
- "0",
- "--gid",
- "0",
- whoami,
- ],
+ [bwrap, "--ro-bind", "/", "/", "--unshare-user", "--uid", "0", "--gid", "0", whoami,],
universal_newlines=True,
).strip()
except subprocess.CalledProcessError:
@@ -123,10 +110,7 @@ class SandboxBwrap(Sandbox):
if cls.user_ns_available:
# User namespace support allows arbitrary build UID/GID settings.
pass
- elif (
- config.build_uid != local_platform._uid
- or config.build_gid != local_platform._gid
- ):
+ elif config.build_uid != local_platform._uid or config.build_gid != local_platform._gid:
# Without user namespace support, the UID/GID in the sandbox
# will match the host UID/GID.
return False
@@ -136,9 +120,7 @@ class SandboxBwrap(Sandbox):
if config.build_os != host_os:
raise SandboxError("Configured and host OS don't match.")
if config.build_arch != host_arch and not local_platform.can_crossbuild(config):
- raise SandboxError(
- "Configured architecture and host architecture don't match."
- )
+ raise SandboxError("Configured architecture and host architecture don't match.")
return True
@@ -150,8 +132,7 @@ class SandboxBwrap(Sandbox):
if not self._has_command(command[0], env):
raise SandboxCommandError(
- "Staged artifacts do not provide command " "'{}'".format(command[0]),
- reason="missing-command",
+ "Staged artifacts do not provide command " "'{}'".format(command[0]), reason="missing-command",
)
# NOTE: MountMap transitively imports `_fuse/fuse.py` which raises an
@@ -218,9 +199,7 @@ class SandboxBwrap(Sandbox):
mount_source_overrides = self._get_mount_sources()
for mark in marked_directories:
mount_point = mark["directory"]
- if (
- mount_point in mount_source_overrides
- ): # pylint: disable=consider-using-get
+ if mount_point in mount_source_overrides: # pylint: disable=consider-using-get
mount_source = mount_source_overrides[mount_point]
else:
mount_source = mount_map.get_mount_source(mount_point)
@@ -287,12 +266,7 @@ class SandboxBwrap(Sandbox):
# Run bubblewrap !
exit_code = self.run_bwrap(
- bwrap_command,
- stdin,
- stdout,
- stderr,
- (flags & SandboxFlags.INTERACTIVE),
- pass_fds,
+ bwrap_command, stdin, stdout, stderr, (flags & SandboxFlags.INTERACTIVE), pass_fds,
)
# Cleanup things which bwrap might have left behind, while
@@ -355,9 +329,7 @@ class SandboxBwrap(Sandbox):
break
if child_exit_code is None:
raise SandboxError(
- "`bwrap' terminated during sandbox setup with exitcode {}".format(
- exit_code
- ),
+ "`bwrap' terminated during sandbox setup with exitcode {}".format(exit_code),
reason="bwrap-sandbox-fail",
)
exit_code = child_exit_code