diff options
author | Juha Kosonen <juha.kosonen@nokia.com> | 2018-08-14 16:00:58 +0300 |
---|---|---|
committer | Cédric Ollivier <cedric.ollivier@orange.com> | 2018-08-16 10:56:12 +0200 |
commit | ca46e50190055c9752847d89d044e9fc6c307e81 (patch) | |
tree | cd50f915bec7ac4a5072c109aa27b3de3d2a6ee0 /functest/opnfv_tests/openstack/rally | |
parent | 86656df19a9496c18ad1b40eaba65a425eb494ea (diff) |
Create new project/user for rally test
FUNCTEST-1002
Change-Id: Id19b9aa70aeded6d99978084b3de4a63e31a81ad
Signed-off-by: Juha Kosonen <juha.kosonen@nokia.com>
(cherry picked from commit 4b7d89de42fe9a3867b12ea39721ad92aff96340)
Diffstat (limited to 'functest/opnfv_tests/openstack/rally')
-rw-r--r-- | functest/opnfv_tests/openstack/rally/rally.py | 22 |
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 4fd2d021f..91b795389 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 = [] @@ -492,7 +504,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() |