From 162cbda055624472ef817b7a9b6ccd65cf97e155 Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Tue, 10 Apr 2018 17:59:48 +1000 Subject: sb/config: Terminate building on an error. This changes the previous functionality where the RSB switch to dry run mode. This functionality can be enabled by adding `--keep-going`. Close #3209. --- source-builder/sb/config.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/source-builder/sb/config.py b/source-builder/sb/config.py index a4f739b..74c002e 100644 --- a/source-builder/sb/config.py +++ b/source-builder/sb/config.py @@ -312,13 +312,15 @@ class file: log.output(text) def _error(self, msg): - err = 'error: %s' % (self._name_line_msg(msg)) - log.stderr(err) - log.output(err) - self.in_error = True if not self.opts.dry_run(): - log.stderr('warning: switched to dry run due to errors') - self.opts.set_dry_run() + if self.opts.keep_going(): + err = 'error: %s' % (self._name_line_msg(msg)) + log.stderr(err) + log.output(err) + self.in_error = True + log.stderr('warning: switched to dry run due to errors') + self.opts.set_dry_run() + raise error.general(self._name_line_msg(msg)) def _label(self, name): if name.startswith('%{') and name[-1] is '}': -- cgit v1.2.3