[elbe-devel] [PATCH v3 18/52] Add logging to buildchroot
dion at linutronix.de
dion at linutronix.de
Thu Jun 27 14:44:32 CEST 2019
From: Olivier Dion <dion at linutronix.de>
Signed-off-by: Olivier Dion <dion at linutronix.de>
---
elbepack/commands/buildchroot.py | 54 +++++++++++++++++++++-------------------
1 file changed, 29 insertions(+), 25 deletions(-)
diff --git a/elbepack/commands/buildchroot.py b/elbepack/commands/buildchroot.py
index 5761f5e8..f9a9d23d 100644
--- a/elbepack/commands/buildchroot.py
+++ b/elbepack/commands/buildchroot.py
@@ -10,12 +10,15 @@ from __future__ import print_function
from optparse import OptionParser
import sys
+import os
+import logging
from elbepack.shellhelper import CommandError
from elbepack.elbeproject import ElbeProject
from elbepack.elbexml import ValidationError
from elbepack.db import ElbeDB
from elbepack.cdroms import CDROM_SIZE
+from elbepack.log import elbe_logging
from sqlalchemy.exc import OperationalError
@@ -87,28 +90,29 @@ def run_command(argv):
print("WARNING: Skip CDROMS is now the default, "
"use --build-bin to build binary CDROM")
- try:
- project = ElbeProject(opt.target, args[0], opt.output, opt.name,
- opt.buildtype, opt.skip_validation)
- except ValidationError as e:
- print(str(e))
- print("xml validation failed. Bailing out")
- sys.exit(20)
-
- try:
- project.build(
- opt.build_bin,
- opt.build_sources,
- opt.cdrom_size,
- opt.skip_pkglist,
- opt.skip_pbuild)
- except CommandError as ce:
- print("command in project build failed: %s" % ce.cmd)
- sys.exit(20)
-
- try:
- db = ElbeDB()
- db.save_project(project)
- except OperationalError:
- print("failed to save project in database")
- sys.exit(20)
+ # Is opt.output necessary here?
+ with elbe_logging(opt.target):
+ try:
+ project = ElbeProject(opt.target, args[0], opt.output, opt.name,
+ opt.buildtype, opt.skip_validation)
+ except ValidationError:
+ logging.exception("XML validation failed. Bailing out")
+ sys.exit(20)
+
+ try:
+ project.build(
+ opt.build_bin,
+ opt.build_sources,
+ opt.cdrom_size,
+ opt.skip_pkglist,
+ opt.skip_pbuild)
+ except CommandError as ce:
+ logging.error("Command in project build failed: %s", ce.cmd)
+ sys.exit(20)
+
+ try:
+ db = ElbeDB()
+ db.save_project(project)
+ except OperationalError:
+ logging.exception("Failed to save project in database")
+ sys.exit(20)
--
2.11.0
More information about the elbe-devel
mailing list