Bugfix: no pod.yaml file error when run test case not in the root path 77/22877/5
authorchenjiankun <chenjiankun1@huawei.com>
Sun, 9 Oct 2016 10:11:24 +0000 (10:11 +0000)
committerchenjiankun <chenjiankun1@huawei.com>
Mon, 10 Oct 2016 08:27:06 +0000 (08:27 +0000)
JIRA: YARDSTICK-364

Change-Id: I8c460064c058f77971140f69689ba638179f89d9
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
etc/__init__.py [new file with mode: 0644]
setup.py
yardstick/benchmark/contexts/node.py
yardstick/cmd/commands/testcase.py
yardstick/definitions.py [new file with mode: 0644]

diff --git a/etc/__init__.py b/etc/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
index a2131cf..ba7316d 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -23,6 +23,12 @@ setup(
             'resources/files/*',
             'resources/scripts/install/*.bash',
             'resources/scripts/remove/*.bash'
+        ],
+        'etc': [
+            'yardstick/nodes/*/*.yaml'
+        ],
+        'tests': [
+            'opnfv/*/*.yaml'
         ]
     },
     url="https://www.opnfv.org",
index c3d6521..c4e603a 100644 (file)
@@ -8,10 +8,12 @@
 ##############################################################################
 
 import sys
+import os
 import yaml
 import logging
 
 from yardstick.benchmark.contexts.base import Context
+from yardstick.definitions import YARDSTICK_ROOT_PATH
 
 LOG = logging.getLogger(__name__)
 
@@ -33,7 +35,9 @@ class NodeContext(Context):
     def init(self, attrs):
         '''initializes itself from the supplied arguments'''
         self.name = attrs["name"]
-        self.file_path = attrs.get("file", "/etc/yardstick/nodes/pod.yaml")
+        self.file_path = attrs.get("file", "")
+        if not os.path.exists(self.file_path):
+            self.file_path = YARDSTICK_ROOT_PATH + self.file_path
 
         LOG.info("Parsing pod file: %s", self.file_path)
 
index 5205eb9..cb76c7a 100644 (file)
@@ -8,13 +8,15 @@
 ##############################################################################
 
 """ Handler for yardstick command 'testcase' """
-from yardstick.cmd import print_hbar
-from yardstick.common.task_template import TaskTemplate
-from yardstick.common.utils import cliargs
 import os
 import yaml
 import sys
 
+from yardstick.cmd import print_hbar
+from yardstick.common.task_template import TaskTemplate
+from yardstick.common.utils import cliargs
+from yardstick.definitions import YARDSTICK_ROOT_PATH
+
 
 class TestcaseCommands(object):
     '''Testcase commands.
@@ -22,7 +24,7 @@ class TestcaseCommands(object):
        Set of commands to discover and display test cases.
     '''
     def __init__(self):
-        self.test_case_path = 'tests/opnfv/test_cases/'
+        self.test_case_path = YARDSTICK_ROOT_PATH + 'tests/opnfv/test_cases/'
         self.testcase_list = []
 
     def do_list(self, args):
diff --git a/yardstick/definitions.py b/yardstick/definitions.py
new file mode 100644 (file)
index 0000000..300a78e
--- /dev/null
@@ -0,0 +1,5 @@
+import os
+
+dirname = os.path.dirname
+YARDSTICK_ROOT_PATH = dirname(dirname(os.path.abspath(__file__)))
+YARDSTICK_ROOT_PATH += os.path.sep