From a9d26d633ac4263b00233b7a2e6135949ae8261d Mon Sep 17 00:00:00 2001 From: Andrei Stepanov Date: Jun 27 2018 13:27:19 +0000 Subject: [PATCH 1/2] Ignore FMF fails. Signed-off-by: Andrei Stepanov --- diff --git a/inventory/standard-inventory-qcow2 b/inventory/standard-inventory-qcow2 index 06ea671..9e83972 100755 --- a/inventory/standard-inventory-qcow2 +++ b/inventory/standard-inventory-qcow2 @@ -148,6 +148,10 @@ class FmfMetadataTree(object): very resource consuming when walking through big project with many directories. + Returns + ------- + fmf.Tree() object or False. + """ tree = None """fmf.Tree() object.""" @@ -156,7 +160,13 @@ class FmfMetadataTree(object): def get(self, path="."): if self.path != path or self.tree is None: FmfMetadataTree.path = path - FmfMetadataTree.tree = fmf.Tree(path) + try: + FmfMetadataTree.tree = fmf.Tree(path) + except Exception: + """Fmf initialization failed. Do not try initialize further for this path. + """ + logger.info("Project doesn't use FMF at '%s'.", self.path) + FmfMetadataTree.tree = False return self.tree @@ -177,6 +187,9 @@ def fmf_get(path, default=None): """ tree = FmfMetadataTree().get() + if not tree: + logger.info("fmf_get() for %s: %s (def)", str(path), str(default)) + return default path.insert(0, 'standard-inventory-qcow2') value = default for provision in tree.prune(names=[".*/provision$"]): @@ -187,12 +200,7 @@ def fmf_get(path, default=None): except (KeyError, TypeError): value = default break - try: - diagnose = distutils.util.strtobool(os.getenv("TEST_DEBUG", "0")) - except ValueError: - diagnose = 0 - if diagnose: - sys.stderr.write("DIAGNOSE: fmf_get() for {}: {}\n".format(str(path), str(value))) + logger.info("fmf_get() for %s: %s", str(path), str(value)) return value From f7813cf9c453fbff1110e6e2d57fc49f4254edab Mon Sep 17 00:00:00 2001 From: Andrei Stepanov Date: Jun 27 2018 13:32:12 +0000 Subject: [PATCH 2/2] Ignore FMF fails. Signed-off-by: Andrei Stepanov --- diff --git a/inventory/standard-inventory-qcow2 b/inventory/standard-inventory-qcow2 index 9e83972..5bde92c 100755 --- a/inventory/standard-inventory-qcow2 +++ b/inventory/standard-inventory-qcow2 @@ -165,7 +165,6 @@ class FmfMetadataTree(object): except Exception: """Fmf initialization failed. Do not try initialize further for this path. """ - logger.info("Project doesn't use FMF at '%s'.", self.path) FmfMetadataTree.tree = False return self.tree @@ -188,7 +187,6 @@ def fmf_get(path, default=None): """ tree = FmfMetadataTree().get() if not tree: - logger.info("fmf_get() for %s: %s (def)", str(path), str(default)) return default path.insert(0, 'standard-inventory-qcow2') value = default @@ -200,7 +198,6 @@ def fmf_get(path, default=None): except (KeyError, TypeError): value = default break - logger.info("fmf_get() for %s: %s", str(path), str(value)) return value