summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Ennis <jennis18@bloomberg.net>2018-09-21 06:51:03 -0400
committerJürg Billeter <j@bitron.ch>2018-09-27 15:29:32 +0100
commitab5e78b44495222183d3320c3b2324f7490e43d8 (patch)
tree5d4c54e7b32640f77b01154260a0c6a02ba66693
parentb78ae76767842785baed0b631961b4cf0c433d77 (diff)
downloadbuildstream-ab5e78b44495222183d3320c3b2324f7490e43d8.tar.gz
Import sandbox subclass when instantiating sandbox
This patch was required due to not being able to execute `bst` on a Linux machine without FUSE available.
-rw-r--r--buildstream/_platform/linux.py3
-rw-r--r--buildstream/_platform/unix.py2
-rw-r--r--buildstream/sandbox/__init__.py2
3 files changed, 3 insertions, 4 deletions
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