generate test_info.yaml 43/1443/3
authorNaga Sugguna <ns156u@att.com>
Wed, 21 Aug 2019 14:48:21 +0000 (09:48 -0500)
committerNaga Sugguna <ns156u@att.com>
Wed, 21 Aug 2019 15:49:35 +0000 (10:49 -0500)
Signed-off-by: Naga Sugguna <ns156u@att.com>
Change-Id: I870a98af01e96213025ce2f989410efada677364

bluval/blucon.py
bluval/bluval.py

index ececc1f..7f72048 100644 (file)
@@ -29,6 +29,8 @@ import yaml
 from bluutil import BluvalError
 from bluutil import ShowStopperError
 
+_OPTIONAL_ALSO = False
+
 def get_volumes(layer):
     """Create a list with volumes to mount in the container for given layer
     """
@@ -59,7 +61,8 @@ def invoke_docker(bluprint, layer):
            " akraino/validation:{0}-latest"
            " /bin/sh -c"
            " 'cd /opt/akraino/validation "
-           "&& python bluval/bluval.py -l {0} {1}'").format(layer, bluprint)
+           "&& python bluval/bluval.py -l {0} {1} {2}'"
+           .format(layer, ("-o" if _OPTIONAL_ALSO else ""), bluprint))
 
     args = [cmd]
     try:
@@ -86,14 +89,19 @@ def invoke_dockers(yaml_loc, layer, blueprint_name):
 @click.command()
 @click.argument('blueprint')
 @click.option('--layer', '-l')
-def main(blueprint, layer):
+@click.option('--optional_also', '-o', is_flag=True)
+def main(blueprint, layer, optional_also):
     """Takes blueprint name and optional layer. Validates inputs and derives
     yaml location from blueprint name. Invokes validate on blue print.
     """
+    global _OPTIONAL_ALSO  # pylint: disable=global-statement
     mypath = Path(__file__).absolute()
     yaml_loc = mypath.parents[0].joinpath('bluval-{}.yaml'.format(blueprint))
     if layer is not None:
         layer = layer.lower()
+    if optional_also:
+        _OPTIONAL_ALSO = True
+        print("_OPTIONAL_ALSO {}".format(_OPTIONAL_ALSO))
     try:
         invoke_dockers(yaml_loc, layer, blueprint)
     except ShowStopperError as err:
index bcdc856..feefa5e 100644 (file)
@@ -96,6 +96,20 @@ def validate_blueprint(yaml_loc, layer):
     validate_layer(blueprint, layer)
 
 
+def write_test_info(layer):
+    """writes testing info to test_info.yaml
+    """
+    data = dict(
+        test_info=dict(
+            layer=layer,
+            optional=_OPTIONAL_ALSO,
+        )
+    )
+
+    with open('/opt/akraino/results/test_info.yaml', 'w') as outfile:
+        yaml.dump(data, outfile, default_flow_style=False)
+
+
 @click.command()
 @click.argument('blueprint')
 @click.option('--layer', '-l')
@@ -114,6 +128,7 @@ def main(blueprint, layer, optional_also):
         print("_OPTIONAL_ALSO {}".format(_OPTIONAL_ALSO))
 
     try:
+        write_test_info(layer)
         validate_blueprint(yaml_loc, layer)
     except ShowStopperError as err:
         print('ShowStopperError:', err)