[gnome-continuous-yocto/gnomeostree-3.28-rocko: 6865/8267] scriptutils: exit politely when no text editor available



commit 2c035b266f7a7f904afa7698706eba1361b41411
Author: Chang Rebecca Swee Fun <rebecca swee fun chang intel com>
Date:   Wed Jun 28 09:59:17 2017 +0800

    scriptutils: exit politely when no text editor available
    
    devtool edit-recipe now has ugly tracebacks if executed without an
    editor available. This happens in the build containers whenever no
    text editor is available.
    
    subprocess.check_call will run text editing command with recipe path
    provided. It will wait for command to complete. If the return code
    was zero then return, otherwise raise CalledProcessError exception.
    
    This enhancement will suppress the traceback by catching the exception
    and prompt the error messages in a proper manner shown below:
    
    pokyuser@59c99c507238:/workdir/docker-dbg$ devtool edit-recipe ifupdown
    /bin/sh: 1: vi: not found
    ERROR: Execution of 'vi' failed: Command 'vi
    "/workdir/docker-dbg/workspace/recipes/ifupdown/ifupdown_0.8.16.bb"'
    returned non-zero exit status 127
    
    [YOCTO #11434]
    
    (From OE-Core rev: c536ccfd162fc8871838fa229012c562e3f8e0d9)
    
    Signed-off-by: Chang Rebecca Swee Fun <rebecca swee fun chang intel com>
    Signed-off-by: Ross Burton <ross burton intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 scripts/lib/scriptutils.py |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/scripts/lib/scriptutils.py b/scripts/lib/scriptutils.py
index 1005dd4..b6217dc 100644
--- a/scripts/lib/scriptutils.py
+++ b/scripts/lib/scriptutils.py
@@ -216,8 +216,8 @@ def run_editor(fn):
     editor = os.getenv('VISUAL', os.getenv('EDITOR', 'vi'))
     try:
         return subprocess.check_call('%s %s' % (editor, params), shell=True)
-    except OSError as exc:
-        logger.error("Execution of editor '%s' failed: %s", editor, exc)
+    except subprocess.CalledProcessError as exc:
+        logger.error("Execution of '%s' failed: %s" % (editor, exc))
         return 1
 
 def is_src_url(param):


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]