[oe-commits] Patrick Ohly : combo-layer: handle unset dest_dir in sanity_check()

git at git.openembedded.org git at git.openembedded.org
Fri May 29 12:02:15 UTC 2015


Module: openembedded-core.git
Branch: fido
Commit: b266977372f2d5704d00dd07b29ea49898ebf70e
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=b266977372f2d5704d00dd07b29ea49898ebf70e

Author: Patrick Ohly <patrick.ohly at intel.com>
Date:   Wed May 20 13:48:20 2015 +0200

combo-layer: handle unset dest_dir in sanity_check()

The previous "clean up dest_dir checking" patch (f8cdbe7497) improved
handling of empty dest_dir but made handling of unset dest_dir worse:
instead showing the "Option dest_dir is not defined for component ..."
error, it fails with a Python exception.

Avoid that by providing a sane fallback for the unset case. With that
change, dest_dir is no longer strictly required, but the check for it
is kept to ensure that a combo-layer.conf also works with older
combo-layer versions.

[Yocto #7773]

(From OE-Core rev: d4bf858b2c15bef128fd6d606b08203a318e2d4c)

Signed-off-by: Patrick Ohly <patrick.ohly at intel.com>
Signed-off-by: Ross Burton <ross.burton at intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 scripts/combo-layer | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/scripts/combo-layer b/scripts/combo-layer
index b0b7c28..698d3e3 100755
--- a/scripts/combo-layer
+++ b/scripts/combo-layer
@@ -145,8 +145,10 @@ class Configuration(object):
                     msg = "%s\nOption %s is not defined for component %s" %(msg, option, name)
                     missing_options.append(option)
             # Sanitize dest_dir so that we do not have to deal with edge cases
-            # (empty string, double slashes) in the rest of the code.
-            dest_dir = os.path.normpath(self.repos[name]["dest_dir"])
+            # (unset, empty string, double slashes) in the rest of the code.
+            # It not being set will still be flagged as error because it is
+            # listed as required option above; that could be changed now.
+            dest_dir = os.path.normpath(self.repos[name].get("dest_dir", "."))
             self.repos[name]["dest_dir"] = "." if not dest_dir else dest_dir
         if msg != "":
             logger.error("configuration file %s has the following error: %s" % (self.conffile,msg))



More information about the Openembedded-commits mailing list