Force the use of public endpoints in shaker.py 17/59517/1
authorCédric Ollivier <cedric.ollivier@orange.com>
Sun, 24 Jun 2018 17:43:01 +0000 (19:43 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Tue, 3 Jul 2018 17:42:53 +0000 (19:42 +0200)
It now leverages on the new user created and gets the public endpoint.

Change-Id: Iead106e614a73708cb13e33b49a2f438766a3056
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
(cherry picked from commit 192cdecb5d7ed16641d1c5520450be38e9e0f166)

functest/core/tenantnetwork.py

index 5458480..d005bc3 100644 (file)
@@ -44,34 +44,36 @@ class NewProject(object):
         self.guid = guid
         self.project = None
         self.user = None
+        self.password = None
+        self.domain = None
 
     def create(self):
         """Create projects/users"""
         assert self.orig_cloud
         assert self.case_name
-        password = str(uuid.uuid4())
-        domain = self.orig_cloud.get_domain(
+        self.password = str(uuid.uuid4())
+        self.domain = self.orig_cloud.get_domain(
             name_or_id=self.orig_cloud.auth.get(
                 "project_domain_name", "Default"))
         self.project = self.orig_cloud.create_project(
             name='{}-project_{}'.format(self.case_name, self.guid),
             description="Created by OPNFV Functest: {}".format(
                 self.case_name),
-            domain_id=domain.id)
+            domain_id=self.domain.id)
         self.__logger.debug("project: %s", self.project)
         self.user = self.orig_cloud.create_user(
             name='{}-user_{}'.format(self.case_name, self.guid),
-            password=password,
-            domain_id=domain.id)
+            password=self.password,
+            domain_id=self.domain.id)
         self.__logger.debug("user: %s", self.user)
         self.orig_cloud.grant_role(
             "_member_", user=self.user.id, project=self.project.id,
-            domain=domain.id)
+            domain=self.domain.id)
         osconfig = os_client_config.config.OpenStackConfig()
         osconfig.cloud_config[
             'clouds']['envvars']['project_name'] = self.project.name
         osconfig.cloud_config['clouds']['envvars']['username'] = self.user.name
-        osconfig.cloud_config['clouds']['envvars']['password'] = password
+        osconfig.cloud_config['clouds']['envvars']['password'] = self.password
         self.cloud = shade.OpenStackCloud(
             cloud_config=osconfig.get_one_cloud())