summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan van Berkom <tristan@codethink.co.uk>2020-12-22 15:40:42 +0900
committerTristan van Berkom <tristan@codethink.co.uk>2020-12-23 14:57:49 +0900
commit24680e5c6e795da45de53feeef85e7aad03aab75 (patch)
tree694bf7718f6007e08c11ac11ea4d7cd1ada84f96
parent73dde7d768f5cfde50e271fec26809f9b9a75008 (diff)
downloadbuildstream-24680e5c6e795da45de53feeef85e7aad03aab75.tar.gz
_stream.py: Add internal _resolve_remotely_cached()
This replaces the corresponding Pipeline method `check_remotes()`.
-rw-r--r--src/buildstream/_stream.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/buildstream/_stream.py b/src/buildstream/_stream.py
index e05100f24..1dab4a3f0 100644
--- a/src/buildstream/_stream.py
+++ b/src/buildstream/_stream.py
@@ -618,7 +618,7 @@ class Stream:
)
if self._artifacts.has_fetch_remotes():
- self._pipeline.check_remotes(target_objects)
+ self._resolve_cached_remotely(target_objects)
return target_objects
@@ -1205,6 +1205,21 @@ class Stream:
self._elementsourcescache.setup_remotes(use_config=use_source_config, remote_url=source_url)
self._sourcecache.setup_remotes(use_config=use_source_config, remote_url=source_url)
+ # _resolve_cached_remotely()
+ #
+ # Checks whether the listed elements are currently cached in
+ # any of their respectively configured remotes.
+ #
+ # Args:
+ # targets (list [Element]): The list of element targets
+ #
+ def _resolve_cached_remotely(self, targets):
+ with self._context.messenger.simple_task("Querying remotes for cached status", silent_nested=True) as task:
+ task.set_maximum_progress(len(targets))
+ for element in targets:
+ element._cached_remotely()
+ task.add_current_progress()
+
# _load_tracking()
#
# A variant of _load() to be used when the elements should be used