diff options
author | James Ennis <jennis18@bloomberg.net> | 2018-09-21 06:51:03 -0400 |
---|---|---|
committer | Jürg Billeter <j@bitron.ch> | 2018-09-27 10:49:12 +0100 |
commit | a18a3cf9eca334128eb6119f32f8c5d7fe1f9776 (patch) | |
tree | cdaf741a3e1920babd32642c7627bc2c23c9de33 | |
parent | fa1f4ba5987549be8b9d2b50fa8951d3e06cffbe (diff) | |
download | buildstream-mac_fixes.tar.gz |
Import sandbox subclass when instantiating sandboxmac_fixes
Sandbox: Ensure that we only import the sandbox subclasses when instantiate a sandbox
This patch was required due to not being able to execute `bst` on
a Linux machine without Fuse or Bubblewrap available
-rw-r--r-- | buildstream/_platform/darwin.py | 2 | ||||
-rw-r--r-- | buildstream/_platform/linux.py | 3 | ||||
-rw-r--r-- | buildstream/_platform/unix.py | 2 | ||||
-rw-r--r-- | buildstream/sandbox/__init__.py | 2 |
4 files changed, 4 insertions, 5 deletions
diff --git a/buildstream/_platform/darwin.py b/buildstream/_platform/darwin.py index 0a85742b4..a6b8f7acc 100644 --- a/buildstream/_platform/darwin.py +++ b/buildstream/_platform/darwin.py @@ -19,7 +19,7 @@ import os import resource from .._exceptions import PlatformError -from ..sandbox import SandboxChroot, SandboxDummy +from ..sandbox import SandboxDummy from . import Platform diff --git a/buildstream/_platform/linux.py b/buildstream/_platform/linux.py index cae0bd75a..85bfbd852 100644 --- a/buildstream/_platform/linux.py +++ b/buildstream/_platform/linux.py @@ -23,7 +23,7 @@ import subprocess from .. import _site from .. import utils from .._message import Message, MessageType -from ..sandbox import SandboxBwrap, SandboxDummy +from ..sandbox import SandboxDummy from . import Platform @@ -48,6 +48,7 @@ class Linux(Platform): if not self._local_sandbox_available(): return SandboxDummy(*args, **kwargs) else: + from ..sandbox._sandboxbwrap import SandboxBwrap # Inform the bubblewrap sandbox as to whether it can use user namespaces or not kwargs['user_ns_available'] = self._user_ns_available kwargs['die_with_parent_available'] = self._die_with_parent_available diff --git a/buildstream/_platform/unix.py b/buildstream/_platform/unix.py index 7aa8cbc0d..d2acefe65 100644 --- a/buildstream/_platform/unix.py +++ b/buildstream/_platform/unix.py @@ -20,7 +20,6 @@ import os from .._exceptions import PlatformError -from ..sandbox import SandboxChroot from . import Platform @@ -39,6 +38,7 @@ class Unix(Platform): raise PlatformError("Root privileges are required to run without bubblewrap.") def create_sandbox(self, *args, **kwargs): + from ..sandbox._sandboxchroot import SandboxChroot return SandboxChroot(*args, **kwargs) def check_sandbox_config(self, config): diff --git a/buildstream/sandbox/__init__.py b/buildstream/sandbox/__init__.py index ff40264ae..5999aba7a 100644 --- a/buildstream/sandbox/__init__.py +++ b/buildstream/sandbox/__init__.py @@ -18,7 +18,5 @@ # Tristan Maat <tristan.maat@codethink.co.uk> from .sandbox import Sandbox, SandboxFlags -from ._sandboxchroot import SandboxChroot -from ._sandboxbwrap import SandboxBwrap from ._sandboxremote import SandboxRemote from ._sandboxdummy import SandboxDummy |