[elbe-devel] [PATCH v3 20/52] Add logging to stdout for command chroot

Torben Hohn torben.hohn at linutronix.de
Fri Jul 5 11:02:07 CEST 2019


On Thu, Jun 27, 2019 at 02:44:34PM +0200, dion at linutronix.de wrote:
> From: Olivier Dion <dion at linutronix.de>

make use of the new logging system, and replace all                                                                                               
print() with functions from logging and wrap                                                                                                      
it in "with elbe_logging(stdout=True):"      

> 
> Signed-off-by: Olivier Dion <dion at linutronix.de>

Reviewed-by: Torben Hohn <torben.hohn at linutronix.de>

> ---
>  elbepack/commands/chroot.py | 56 +++++++++++++++++++++++----------------------
>  1 file changed, 29 insertions(+), 27 deletions(-)
> 
> diff --git a/elbepack/commands/chroot.py b/elbepack/commands/chroot.py
> index 7529fcf7..a01ec4ed 100644
> --- a/elbepack/commands/chroot.py
> +++ b/elbepack/commands/chroot.py
> @@ -11,9 +11,11 @@ from __future__ import print_function
>  from optparse import OptionParser
>  import sys
>  import os
> +import logging
>  
>  from elbepack.elbeproject import ElbeProject
>  from elbepack.elbexml import ValidationError, ValidationMode
> +from elbepack.log import elbe_logging
>  
>  
>  def run_command(argv):
> @@ -35,34 +37,34 @@ def run_command(argv):
>          oparser.print_help()
>          sys.exit(20)
>  
> -    try:
> -        project = ElbeProject(
> -            args[0],
> -            override_buildtype=opt.buildtype,
> -            skip_validate=opt.skip_validation,
> -            url_validation=ValidationMode.NO_CHECK)
> -    except ValidationError as e:
> -        print(str(e))
> -        print("xml validation failed. Bailing out")
> -        sys.exit(20)
> +    with elbe_logging(stdout=True):
> +        try:
> +            project = ElbeProject(
> +                args[0],
> +                override_buildtype=opt.buildtype,
> +                skip_validate=opt.skip_validation,
> +                url_validation=ValidationMode.NO_CHECK)
> +        except ValidationError:
> +            logging.exception("XML validation failed.  Bailing out")
> +            sys.exit(20)
>  
> -    os.environ["LANG"] = "C"
> -    os.environ["LANGUAGE"] = "C"
> -    os.environ["LC_ALL"] = "C"
> -    # TODO: howto set env in chroot?
> -    os.environ["PS1"] = project.xml.text('project/name') + ': \w\$'
> +        os.environ["LANG"] = "C"
> +        os.environ["LANGUAGE"] = "C"
> +        os.environ["LC_ALL"] = "C"
> +        # TODO: howto set env in chroot?
> +        os.environ["PS1"] = project.xml.text('project/name') + ': \w\$'
>  
> -    cmd = "/bin/bash"
> +        cmd = "/bin/bash"
>  
> -    if len(args) > 1:
> -        cmd = ""
> -        cmd2 = args[1:]
> -        for c in cmd2:
> -            cmd += (c + " ")
> +        if len(args) > 1:
> +            cmd = ""
> +            cmd2 = args[1:]
> +            for c in cmd2:
> +                cmd += (c + " ")
>  
> -    if opt.target:
> -        with project.targetfs:
> -            os.system("/usr/sbin/chroot %s %s" % (project.targetpath, cmd))
> -    else:
> -        with project.buildenv:
> -            os.system("/usr/sbin/chroot %s %s" % (project.chrootpath, cmd))
> +        if opt.target:
> +            with project.targetfs:
> +                os.system("/usr/sbin/chroot %s %s" % (project.targetpath, cmd))
> +        else:
> +            with project.buildenv:
> +                os.system("/usr/sbin/chroot %s %s" % (project.chrootpath, cmd))
> -- 
> 2.11.0
> 
> 
> _______________________________________________
> elbe-devel mailing list
> elbe-devel at linutronix.de
> https://lists.linutronix.de/mailman/listinfo/elbe-devel

-- 
Torben Hohn
Linutronix GmbH | Bahnhofstrasse 3 | D-88690 Uhldingen-Mühlhofen
Phone: +49 7556 25 999 18; Fax.: +49 7556 25 999 99

Hinweise zum Datenschutz finden Sie hier (Informations on data privacy 
can be found here): https://linutronix.de/kontakt/Datenschutz.php

Linutronix GmbH | Firmensitz (Registered Office): Uhldingen-Mühlhofen | 
Registergericht (Registration Court): Amtsgericht Freiburg i.Br., HRB700 
806 | Geschäftsführer (Managing Directors): Heinz Egger, Thomas Gleixner



More information about the elbe-devel mailing list