[gnome-continuous-yocto/gnomeostree-3.28-rocko: 5639/8267] devtool: add: prevent repeatedly running recipetool



commit 48f8d1201a0342ba5253c276df504fcb986b8245
Author: Paul Eggleton <paul eggleton linux intel com>
Date:   Wed Apr 12 22:41:28 2017 +1200

    devtool: add: prevent repeatedly running recipetool
    
    If recipetool returns with exit code 14 this means devtool needs to
    build nodejs-native and then call it again. If recipetool returns exit
    code 14 again then clearly something has gone wrong and we should just
    quit with an error.
    
    (From OE-Core rev: 8d7cced6e06d7c2037f5ab75ac859f501129532e)
    
    Signed-off-by: Paul Eggleton <paul eggleton linux intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 scripts/lib/devtool/standard.py |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)
---
diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py
index 73e629c..1e84ae4 100644
--- a/scripts/lib/devtool/standard.py
+++ b/scripts/lib/devtool/standard.py
@@ -155,11 +155,14 @@ def add(args, config, basepath, workspace):
 
     tempdir = tempfile.mkdtemp(prefix='devtool')
     try:
+        builtnpm = False
         while True:
             try:
                 stdout, _ = exec_build_env_command(config.init_path, basepath, 'recipetool --color=%s create 
--devtool -o %s \'%s\' %s' % (color, tempdir, source, extracmdopts), watch=True)
             except bb.process.ExecutionError as e:
                 if e.exitcode == 14:
+                    if builtnpm:
+                        raise DevtoolError('Re-running recipetool still failed to find npm')
                     # FIXME this is a horrible hack that is unfortunately
                     # necessary due to the fact that we can't run bitbake from
                     # inside recipetool since recipetool keeps tinfoil active
@@ -167,6 +170,7 @@ def add(args, config, basepath, workspace):
                     # to exit out and come back here to do it.
                     ensure_npm(config, basepath, args.fixed_setup, check_exists=False)
                     logger.info('Re-running recipe creation process after building nodejs')
+                    builtnpm = True
                     continue
                 elif e.exitcode == 15:
                     raise DevtoolError('Could not auto-determine recipe name, please specify it on the 
command line')


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