diff options
Diffstat (limited to 'src/buildstream/sandbox/_sandboxbwrap.py')
-rw-r--r-- | src/buildstream/sandbox/_sandboxbwrap.py | 44 |
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 |