Bug fix of Bottlenecks can't use CLI
[bottlenecks.git] / utils / parser.py
index b5f2967..65072c0 100644 (file)
@@ -17,6 +17,7 @@ import yaml
 import json
 import time
 from pyroute2 import IPDB
+import utils.infra_setup.runner.docker_env as docker_env
 
 
 class Parser():
@@ -41,6 +42,8 @@ class Parser():
             cls.bottlenecks_config["fetch_os"] = common_config["fetch_os_file"]
             cls.bottlenecks_config["log_dir"] = common_config['log_dir']
             cls.bottlenecks_config["rc_dir"] = common_config['rc_dir']
+            cls.bottlenecks_config["yardstick_rc_dir"] = \
+                common_config['yardstick_rc_dir']
             cls.config_dir_check(cls.bottlenecks_config["log_dir"])
 
     @classmethod
@@ -49,11 +52,11 @@ class Parser():
             cls.test_dir,
             testcase,
             'testsuite_story',
-            story_name)
+            story_name + '.yaml')
         with open(story_dir) as file:
             story_parser = yaml.load(file)
         for case_name in story_parser['testcase']:
-            Parser.testcase_read(cls, testcase, case_name)
+            Parser.testcase_read(testcase, case_name)
 
         return cls.bottlenecks_test
 
@@ -92,6 +95,15 @@ class Parser():
         # TO-DO add cli parameters to stack_config.
         return test_cfg, stack_cfg
 
+    @staticmethod
+    def convert_docker_env(config, ip_type):
+        if ip_type is "dashboard":
+            config["contexts"]["dashboard_ip"] = \
+                docker_env.ELK_info["ip"] + ":9200"
+        elif ip_type is "yardstick":
+            config["contexts"]["yardstick_ip"] = \
+                docker_env.yardstick_info["ip"] + ":8888"
+
     @staticmethod
     def ip_parser(ip_type):
         with IPDB() as ip: