summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuha Kosonen <juha.kosonen@nokia.com>2018-10-15 17:23:23 +0300
committerJuha Kosonen <juha.kosonen@nokia.com>2018-10-16 05:35:30 +0000
commita0aa4016fa0890932f1202c0f8c2c3b2c31ca564 (patch)
treefeb652af3f36ae4b4b86740b67aff3632280ebe9
parent1d866c412c5803fed1c8e68a9e763577d3cd83f1 (diff)
Do not create files in site-package directory
Use /home/opnfv/functest/data/rally/task directory for storing temporary files when running rally tasks. Also removes unused vm scenario from task service list. Change-Id: Icfd4f99ebe6194360bda8bd88e497e018a9541a0 Signed-off-by: Juha Kosonen <juha.kosonen@nokia.com> (cherry picked from commit 520331a06750dd02228f840c346402f52fb864e8)
-rw-r--r--functest/opnfv_tests/openstack/rally/rally.py27
-rw-r--r--functest/opnfv_tests/openstack/rally/task.yaml4
-rw-r--r--functest/tests/unit/openstack/rally/test_rally.py3
3 files changed, 25 insertions, 9 deletions
diff --git a/functest/opnfv_tests/openstack/rally/rally.py b/functest/opnfv_tests/openstack/rally/rally.py
index ac44de118..1d7d75ff4 100644
--- a/functest/opnfv_tests/openstack/rally/rally.py
+++ b/functest/opnfv_tests/openstack/rally/rally.py
@@ -56,7 +56,8 @@ class RallyBase(singlevm.VmReady2):
ITERATIONS_AMOUNT = 10
CONCURRENCY = 4
BLACKLIST_FILE = os.path.join(RALLY_DIR, "blacklist.txt")
- TEMP_DIR = os.path.join(RALLY_DIR, "var")
+ TASK_DIR = os.path.join(getattr(config.CONF, 'dir_rally_data'), 'task')
+ TEMP_DIR = os.path.join(TASK_DIR, 'var')
visibility = 'public'
shared_network = True
@@ -78,7 +79,7 @@ class RallyBase(singlevm.VmReady2):
domain=self.project.domain.id)
self.results_dir = os.path.join(
getattr(config.CONF, 'dir_results'), self.case_name)
- self.task_file = os.path.join(self.RALLY_DIR, 'task.yaml')
+ self.task_file = ''
self.creators = []
self.summary = []
self.scenario_dir = ''
@@ -420,10 +421,26 @@ class RallyBase(singlevm.VmReady2):
else:
raise Exception("Test name '%s' is invalid" % self.test_name)
- if not os.path.exists(self.task_file):
- LOGGER.error("Task file '%s' does not exist.", self.task_file)
+ if not os.path.exists(self.TASK_DIR):
+ os.makedirs(self.TASK_DIR)
+
+ task = os.path.join(self.RALLY_DIR, 'task.yaml')
+ if not os.path.exists(task):
+ LOGGER.error("Task file '%s' does not exist.", task)
raise Exception("Task file '{}' does not exist.".
- format(self.task_file))
+ format(task))
+ self.task_file = os.path.join(self.TASK_DIR, 'task.yaml')
+ shutil.copyfile(task, self.task_file)
+
+ task_macro = os.path.join(self.RALLY_DIR, 'macro')
+ if not os.path.exists(task_macro):
+ LOGGER.error("Task macro dir '%s' does not exist.", task_macro)
+ raise Exception("Task macro dir '{}' does not exist.".
+ format(task_macro))
+ macro_dir = os.path.join(self.TASK_DIR, 'macro')
+ if os.path.exists(macro_dir):
+ shutil.rmtree(macro_dir)
+ shutil.copytree(task_macro, macro_dir)
self.update_keystone_default_role()
self.compute_cnt = len(self.cloud.list_hypervisors())
diff --git a/functest/opnfv_tests/openstack/rally/task.yaml b/functest/opnfv_tests/openstack/rally/task.yaml
index fe9304fc2..14d4e718c 100644
--- a/functest/opnfv_tests/openstack/rally/task.yaml
+++ b/functest/opnfv_tests/openstack/rally/task.yaml
@@ -42,7 +42,3 @@
{% if "heat" in service_list %}
{%- include "var/opnfv-heat.yaml"-%}
{% endif %}
-
-{% if "vm" in service_list %}
-{%- include "var/opnfv-vm.yaml"-%}
-{% endif %}
diff --git a/functest/tests/unit/openstack/rally/test_rally.py b/functest/tests/unit/openstack/rally/test_rally.py
index 22ddb1cc5..149925730 100644
--- a/functest/tests/unit/openstack/rally/test_rally.py
+++ b/functest/tests/unit/openstack/rally/test_rally.py
@@ -267,6 +267,9 @@ class OSRallyTesting(unittest.TestCase):
self.rally_base.prepare_run()
@mock.patch('functest.opnfv_tests.openstack.rally.rally.os.path.exists')
+ @mock.patch('functest.opnfv_tests.openstack.rally.rally.shutil.copyfile')
+ @mock.patch('functest.opnfv_tests.openstack.rally.rally.shutil.copytree')
+ @mock.patch('functest.opnfv_tests.openstack.rally.rally.shutil.rmtree')
def test_prepare_run_flavor_alt_creation_failed(self, *args):
# pylint: disable=unused-argument
self.rally_base.TESTS = ['test1', 'test2']