summaryrefslogtreecommitdiff
path: root/src/buildstream/_context.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildstream/_context.py')
-rw-r--r--src/buildstream/_context.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/buildstream/_context.py b/src/buildstream/_context.py
index 8b559153e..0c2d1a150 100644
--- a/src/buildstream/_context.py
+++ b/src/buildstream/_context.py
@@ -28,6 +28,7 @@ from ._messenger import Messenger
from ._profile import Topics, PROFILER
from ._platform import Platform
from ._artifactcache import ArtifactCache
+from ._elementsourcescache import ElementSourcesCache
from ._sourcecache import SourceCache
from ._cas import CASCache, CASLogLevel
from .types import _CacheBuildTrees, _PipelineSelection, _SchedulerErrorAction
@@ -171,6 +172,7 @@ class Context:
# Private variables
self._platform = None
self._artifactcache = None
+ self._elementsourcescache = None
self._sourcecache = None
self._projects = []
self._project_overrides = Node.from_dict({})
@@ -193,6 +195,9 @@ class Context:
if self._artifactcache:
self._artifactcache.release_resources()
+ if self._elementsourcescache:
+ self._elementsourcescache.release_resources()
+
if self._sourcecache:
self._sourcecache.release_resources()
@@ -421,6 +426,13 @@ class Context:
return self._artifactcache
@property
+ def elementsourcescache(self):
+ if not self._elementsourcescache:
+ self._elementsourcescache = ElementSourcesCache(self)
+
+ return self._elementsourcescache
+
+ @property
def sourcecache(self):
if not self._sourcecache:
self._sourcecache = SourceCache(self)