aboutsummaryrefslogtreecommitdiffstats
path: root/functest/opnfv_tests/openstack/rally
diff options
context:
space:
mode:
authorJuha Kosonen <juha.kosonen@nokia.com>2018-08-14 16:00:58 +0300
committerJuha Kosonen <juha.kosonen@nokia.com>2018-08-14 16:35:53 +0300
commit4b7d89de42fe9a3867b12ea39721ad92aff96340 (patch)
tree18ed8582b287df71a341bd1aaf045dad41728fca /functest/opnfv_tests/openstack/rally
parent8d3eb364d84f90b19f9e7234d01add8764843081 (diff)
Create new project/user for rally test
FUNCTEST-1002 Change-Id: Id19b9aa70aeded6d99978084b3de4a63e31a81ad Signed-off-by: Juha Kosonen <juha.kosonen@nokia.com>
Diffstat (limited to 'functest/opnfv_tests/openstack/rally')
-rw-r--r--functest/opnfv_tests/openstack/rally/rally.py22
1 files changed, 20 insertions, 2 deletions
diff --git a/functest/opnfv_tests/openstack/rally/rally.py b/functest/opnfv_tests/openstack/rally/rally.py
index 4a6362903..bb67fc270 100644
--- a/functest/opnfv_tests/openstack/rally/rally.py
+++ b/functest/opnfv_tests/openstack/rally/rally.py
@@ -33,7 +33,7 @@ from functest.utils import env
LOGGER = logging.getLogger(__name__)
-class RallyBase(singlevm.VmReady1):
+class RallyBase(singlevm.VmReady2):
"""Base class form Rally testcases implementation."""
# pylint: disable=too-many-instance-attributes
@@ -62,6 +62,18 @@ class RallyBase(singlevm.VmReady1):
def __init__(self, **kwargs):
"""Initialize RallyBase object."""
super(RallyBase, self).__init__(**kwargs)
+ assert self.orig_cloud
+ assert self.project
+ if self.orig_cloud.get_role("admin"):
+ role_name = "admin"
+ elif self.orig_cloud.get_role("Admin"):
+ role_name = "Admin"
+ else:
+ raise Exception("Cannot detect neither admin nor Admin")
+ self.orig_cloud.grant_role(
+ role_name, user=self.project.user.id,
+ project=self.project.project.id,
+ domain=self.project.domain.id)
self.creators = []
self.mode = ''
self.summary = []
@@ -476,7 +488,13 @@ class RallyBase(singlevm.VmReady1):
try:
assert super(RallyBase, self).run(
**kwargs) == testcase.TestCase.EX_OK
- conf_utils.create_rally_deployment()
+ environ = dict(
+ os.environ,
+ OS_USERNAME=self.project.user.name,
+ OS_PROJECT_NAME=self.project.project.name,
+ OS_PROJECT_ID=self.project.project.id,
+ OS_PASSWORD=self.project.password)
+ conf_utils.create_rally_deployment(environ=environ)
self._prepare_env()
self._run_tests()
self._generate_report()