summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorknownexus <phillip.smyth@codethink.co.uk>2018-09-13 17:02:28 +0100
committerTristan Van Berkom <tristan.van.berkom@gmail.com>2019-05-10 13:07:57 +0000
commit26f6066453dc94a4f32e720ccf21d13d16fd4739 (patch)
tree454125fde26863dfc758b94bfa22b354089db3f7
parent34268dd10146c4cf0dd3e5c4b580a2a583e9edec (diff)
downloadbuildstream-26f6066453dc94a4f32e720ccf21d13d16fd4739.tar.gz
Incorrect error when malformed project.conf
bst build returns "missing project.conf" when a project.conf is invalid This results in an existing project with malformed yaml being dismissed and attempts to make a new project Added new exception
-rw-r--r--buildstream/_project.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/buildstream/_project.py b/buildstream/_project.py
index 4a3c075e0..c9325174d 100644
--- a/buildstream/_project.py
+++ b/buildstream/_project.py
@@ -381,7 +381,10 @@ class Project():
self._project_conf = _yaml.load(projectfile)
except LoadError as e:
# Raise a more specific error here
- raise LoadError(LoadErrorReason.MISSING_PROJECT_CONF, str(e))
+ if e.reason == LoadErrorReason.MISSING_FILE:
+ raise LoadError(LoadErrorReason.MISSING_PROJECT_CONF, str(e)) from e
+ else:
+ raise
pre_config_node = _yaml.node_copy(self._default_config_node)
_yaml.composite(pre_config_node, self._project_conf)