summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--buildstream/_pipeline.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/buildstream/_pipeline.py b/buildstream/_pipeline.py
index b74c7c302..2d3194f6b 100644
--- a/buildstream/_pipeline.py
+++ b/buildstream/_pipeline.py
@@ -358,10 +358,15 @@ class Pipeline():
inconsistent.append(element)
if inconsistent:
- detail = "Exact versions are missing for the following elements\n" + \
- "Try tracking these elements first with `bst track`\n\n"
+ detail = "Exact versions are missing for the following elements:\n\n"
for element in inconsistent:
- detail += " " + element._get_full_name() + "\n"
+ detail += " Element: {} is inconsistent\n".format(element._get_full_name())
+ for source in element.sources():
+ if source._get_consistency() == Consistency.INCONSISTENT:
+ detail += " Source {} is missing ref\n".format(source)
+ detail += '\n'
+ detail += "Try tracking these elements first with `bst track`\n"
+
raise PipelineError("Inconsistent pipeline", detail=detail, reason="inconsistent-pipeline")
#############################################################