diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-05-30 15:53:53 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-06-01 14:29:31 +0100 |
commit | ab29933898e8b44b59349c568516cd7a71146dac (patch) | |
tree | 7322e29fa66d0f948c73ad4116eeaf518cb95c61 | |
parent | a26667054b726fa1a109b900b47755c2c1a78363 (diff) | |
download | poky-ab29933898e8b44b59349c568516cd7a71146dac.tar.gz |
bitbake: cookerdata: Improve error handling
If we see errors during parsing, firstly its bad to show a traceback
for an expansion error so lets suppress this.
Secondly, raise a BBHandledException instead of a SystemExit to show
we've informed the user about the condition (printing a traceback in the
default unknown case).
(Bitbake rev: e01988d9a1b7c40e31161c6ce7b85c4405671068)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | bitbake/lib/bb/cookerdata.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py index b9b9e16675..60a6d516af 100644 --- a/bitbake/lib/bb/cookerdata.py +++ b/bitbake/lib/bb/cookerdata.py | |||
@@ -227,10 +227,13 @@ class CookerDataBuilder(object): | |||
227 | try: | 227 | try: |
228 | self.parseConfigurationFiles(self.prefiles, self.postfiles) | 228 | self.parseConfigurationFiles(self.prefiles, self.postfiles) |
229 | except SyntaxError: | 229 | except SyntaxError: |
230 | sys.exit(1) | 230 | raise bb.BBHandledException |
231 | except bb.data_smart.ExpansionError as e: | ||
232 | logger.error(str(e)) | ||
233 | raise bb.BBHandledException | ||
231 | except Exception: | 234 | except Exception: |
232 | logger.exception("Error parsing configuration files") | 235 | logger.exception("Error parsing configuration files") |
233 | sys.exit(1) | 236 | raise bb.BBHandledException |
234 | 237 | ||
235 | def _findLayerConf(self, data): | 238 | def _findLayerConf(self, data): |
236 | return findConfigFile("bblayers.conf", data) | 239 | return findConfigFile("bblayers.conf", data) |