]> code.ossystems Code Review - openembedded-core.git/commit
package_manager.py: Print offending package instead of non-sense trace
authorJason Wessel <jason.wessel@windriver.com>
Mon, 5 Mar 2018 13:58:26 +0000 (07:58 -0600)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 7 Mar 2018 14:33:59 +0000 (06:33 -0800)
commit21924fdba286e5962b1680601664dc0491527e25
tree40d87c51edbb6fd6d90f5271f383289943b42a5c
parente65ec7a68de6a0d409a5750b2fbd7ebca9acf5a3
package_manager.py: Print offending package instead of non-sense trace

If you have a package that does not generate a manifest due to using a
noexec rule, the package name should be printed so the problem can be
tracked down.  With out the patch you get an error that makes it look
more like the package_manager is broken as shown below.

oe-core/meta/lib/oe/package_manager.py', lineno: 534, function: create_packages_dir
     0530:
     0531:    for dep in rpmdeps:
     0532:        c = taskdepdata[dep][0]
     0533:        manifest, d2 = oe.sstatesig.find_sstate_manifest(c, taskdepdata[dep][2], taskname, d, multilibs)
 *** 0534:        if not os.path.exists(manifest):
     0535:            continue
     0536:        with open(manifest, "r") as f:
     0537:            for l in f:
     0538:                l = l.strip()
File: '/usr/lib/python3.5/genericpath.py', lineno: 19, function: exists
     0015:# This is false for dangling symbolic links on systems that support them.
     0016:def exists(path):
     0017:    """Test whether a path exists.  Returns False for broken symbolic links"""
     0018:    try:
 *** 0019:        os.stat(path)
     0020:    except OSError:
     0021:        return False
     0022:    return True
     0023:
Exception: TypeError: stat: can't specify None for path argument

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/lib/oe/package_manager.py