PAL: Implement data sets for specification file. 87/9287/1
authorTibor Frank <tifrank@cisco.com>
Wed, 8 Nov 2017 13:51:05 +0000 (14:51 +0100)
committerTibor Frank <tifrank@cisco.com>
Wed, 8 Nov 2017 13:52:25 +0000 (14:52 +0100)
Change-Id: I4a2d290a69700425f33caf7274c6fa525271e0c8
Signed-off-by: Tibor Frank <tifrank@cisco.com>
resources/tools/presentation/pal.py
resources/tools/presentation/specification_parser.py

index fdd3e8a..86b709c 100644 (file)
@@ -83,39 +83,39 @@ def main():
         logging.critical("Finished with error.")
         sys.exit(1)
 
-    try:
-    env = Environment(spec.environment, args.force)
-    env.set_environment()
-
-    if spec.is_debug:
-        if spec.debug["input-format"] == "zip":
-            unzip_files(spec)
-    else:
-        download_data_files(spec)
-
-    prepare_static_content(spec)
-
-    data = InputData(spec)
-    data.read_data()
-
-    generate_tables(spec, data)
-    generate_plots(spec, data)
-    generate_files(spec, data)
-    generate_report(args.release, spec)
-
-    logging.info("Successfully finished.")
-
-    except (KeyError, ValueError, PresentationError) as err:
-        logging.info("Finished with an error.")
-        logging.critical(str(err))
-    except Exception as err:
-        logging.info("Finished with an error.")
-        logging.critical(str(err))
-    #
-    finally:
-        if spec is not None and not spec.is_debug:
-            clean_environment(spec.environment)
-        sys.exit(1)
+    try:
+        env = Environment(spec.environment, args.force)
+        env.set_environment()
+
+        if spec.is_debug:
+            if spec.debug["input-format"] == "zip":
+                unzip_files(spec)
+        else:
+            download_data_files(spec)
+
+        prepare_static_content(spec)
+
+        data = InputData(spec)
+        data.read_data()
+
+        generate_tables(spec, data)
+        generate_plots(spec, data)
+        generate_files(spec, data)
+        generate_report(args.release, spec)
+
+        logging.info("Successfully finished.")
+
+    except (KeyError, ValueError, PresentationError) as err:
+        logging.info("Finished with an error.")
+        logging.critical(str(err))
+    except Exception as err:
+        logging.info("Finished with an error.")
+        logging.critical(str(err))
+
+    finally:
+        if spec is not None and not spec.is_debug:
+            clean_environment(spec.environment)
+        sys.exit(1)
 
 
 if __name__ == '__main__':
index 7ee6dbb..3404024 100644 (file)
@@ -486,7 +486,7 @@ class Specification(object):
                 pass
 
             # add data sets to the elements:
-            if isinstance(element["data"], str):
+            if isinstance(element.get("data", None), str):
                 data_set = element["data"]
                 try:
                     element["data"] = self.configuration["data-sets"][data_set]
@@ -515,7 +515,7 @@ class Specification(object):
                     element["layout"].pop("layout")
                     try:
                         for key, val in (self.configuration["plot-layouts"]
-                                         [layout]):
+                                         [layout].items()):
                             element["layout"][key] = val
                     except KeyError:
                         raise PresentationError("Layout {0} is not defined in "