This is an automated email from the ASF dual-hosted git repository. not-in-ldap pushed a commit to branch jennis/new_artifact_subcommands in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 1050e97ca0b87ca2b7cd48ee4b9e1d135904cd54 Author: James Ennis <[email protected]> AuthorDate: Fri Jan 11 12:13:15 2019 +0000 cli.py: Defer pruning until all specified refs are removed --- buildstream/_frontend/cli.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/buildstream/_frontend/cli.py b/buildstream/_frontend/cli.py index 28e6027..f2bf45c 100644 --- a/buildstream/_frontend/cli.py +++ b/buildstream/_frontend/cli.py @@ -1101,13 +1101,19 @@ def artifact_delete(app, artifacts): if element is not None: elements = [element] + # Remove specified elements and artifacts if elements: elements = app.stream.load_selection(elements, selection=PipelineSelection.NONE) for element in elements: - cache.remove(cache.get_artifact_fullname(element, element._get_cache_key())) + cache_key = element._get_cache_key() + ref = cache.get_artifact_fullname(element, cache_key) + cache.remove(ref, defer_prune=True) if artifacts: - for i, ref in enumerate(artifacts, start=1): - cache.cas.remove(ref, defer_prune=(i != len(artifacts))) + for ref in artifacts: + cache.remove(ref, defer_prune=True) + + # Now we've removed all the refs, prune the unreachable objects + cache.prune() ##################################################################
