summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan Van Berkom <tristan.vanberkom@codethink.co.uk>2017-02-20 23:21:17 +0900
committerTristan Van Berkom <tristan.vanberkom@codethink.co.uk>2017-02-20 23:27:22 +0900
commite814a53375cbad0e33cabd57a388aed8df7ac101 (patch)
tree89ad66b2dec5ce8d2eef3decd70cf86c1ccae986
parent81795ce9ab936141e2effb62466635f08d46ee76 (diff)
downloadbuildstream-e814a53375cbad0e33cabd57a388aed8df7ac101.tar.gz
_pipeline.py: (Issue #4) Dont mark builds as succesfull when they fail.
-rw-r--r--buildstream/_pipeline.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/buildstream/_pipeline.py b/buildstream/_pipeline.py
index 2fe451919..1cdc91bd9 100644
--- a/buildstream/_pipeline.py
+++ b/buildstream/_pipeline.py
@@ -94,7 +94,7 @@ class FetchQueue(Queue):
def skip(self, element):
return element._consistency() == Consistency.CACHED
- def done(self, element, result):
+ def done(self, element, result, returncode):
for source in element._sources():
# Successful fetch, we must be CACHED now
@@ -112,7 +112,7 @@ class TrackQueue(Queue):
def process(self, element):
return element._track()
- def done(self, element, result):
+ def done(self, element, result, returncode):
# Set the new refs in the main process one by one as they complete
for unique_id, new_ref in result:
@@ -142,10 +142,11 @@ class AssembleQueue(Queue):
def skip(self, element):
return element._cached()
- def done(self, element, result):
+ def done(self, element, result, returncode):
# Elements are cached after they are successfully assembled
- element._set_cached()
- self.built_elements.append(element)
+ if returncode == 0:
+ element._set_cached()
+ self.built_elements.append(element)
# Pipeline()