Enhance error messages when building containers
This change will improve our error messaging when building containers by returning all exceptions when there's an issue. This will allow us to grok all known within a single log and handle errors based on the RC information. Change-Id: I855ad2ec3ae27f2c18d53f1d17e4c7041e2258a3 Signed-off-by: Kevin Carter <kecarter@redhat.com>
This commit is contained in:
parent
ecce177c03
commit
f745822049
@ -205,12 +205,23 @@ class BuildahBuilder(base.BaseBuilder):
|
||||
# failed a SystemError will be raised using the
|
||||
# exception information. If any job was loaded
|
||||
# but not executed a SystemError will be raised.
|
||||
exceptions = list()
|
||||
for job in done:
|
||||
if job._exception:
|
||||
raise SystemError("%(container)s raised %(exception)s" %
|
||||
{'container': future_to_build[job],
|
||||
'exception': job._exception})
|
||||
exceptions.append(
|
||||
"\nException information: {exception}".format(
|
||||
exception=job._exception
|
||||
)
|
||||
)
|
||||
else:
|
||||
if exceptions:
|
||||
raise RuntimeError(
|
||||
'\nThe following errors were detected during '
|
||||
'container build(s):\n{exceptions}'.format(
|
||||
exceptions='\n'.join(exceptions)
|
||||
)
|
||||
)
|
||||
|
||||
if not_done:
|
||||
error_msg = ('The following jobs were '
|
||||
'incomplete: {}'.format(
|
||||
|
@ -185,7 +185,7 @@ class TestBuildahBuilder(base.TestCase):
|
||||
mock_submit.side_effect = R_FAILED_LIST
|
||||
_b = bb(WORK_DIR, DEPS)
|
||||
self.assertRaises(
|
||||
SystemError,
|
||||
RuntimeError,
|
||||
_b.build_all,
|
||||
deps=BUILD_ALL_LIST_CONTAINERS
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user