X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=functest%2Fcore%2Ftenantnetwork.py;h=c41f470a895a4f8de09f1fa494dd778668609c3d;hb=refs%2Fchanges%2F39%2F58939%2F1;hp=cdd558868f1117abbb57cf291bf5b3e98dc4e6fa;hpb=9ef0bcbeb22ca70ff2ceb750c08fb24e46a9d0ea;p=functest.git diff --git a/functest/core/tenantnetwork.py b/functest/core/tenantnetwork.py index cdd558868..c41f470a8 100644 --- a/functest/core/tenantnetwork.py +++ b/functest/core/tenantnetwork.py @@ -38,8 +38,8 @@ class NewProject(object): __logger = logging.getLogger(__name__) def __init__(self, cloud, case_name, guid): - self.orig_cloud = cloud self.cloud = None + self.orig_cloud = cloud self.case_name = case_name self.guid = guid self.project = None @@ -51,8 +51,7 @@ class NewProject(object): assert self.case_name password = str(uuid.uuid4()) domain = self.orig_cloud.get_domain( - name_or_id=self.orig_cloud.auth.get( - "project_domain_name", "Default")) + name_or_id="functest") self.project = self.orig_cloud.create_project( name='{}-project_{}'.format(self.case_name, self.guid), description="Created by OPNFV Functest: {}".format( @@ -62,15 +61,18 @@ class NewProject(object): self.user = self.orig_cloud.create_user( name='{}-user_{}'.format(self.case_name, self.guid), password=password, - default_project=self.project.id, domain_id=domain.id) self.__logger.debug("user: %s", self.user) - os.environ["OS_USERNAME"] = self.user.name - os.environ["OS_PROJECT_NAME"] = self.user.default_project_id - cloud_config = os_client_config.get_config() - self.cloud = shade.OpenStackCloud(cloud_config=cloud_config) - os.environ["OS_USERNAME"] = self.orig_cloud.auth["username"] - os.environ["OS_PROJECT_NAME"] = self.orig_cloud.auth["project_name"] + self.orig_cloud.grant_role( + "_member_", user=self.user.id, project=self.project.id, + domain=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 + self.cloud = shade.OpenStackCloud( + cloud_config=osconfig.get_one_cloud()) def clean(self): """Remove projects/users""" @@ -81,7 +83,7 @@ class NewProject(object): self.orig_cloud.delete_user(self.user.id) self.orig_cloud.delete_project(self.project.id) except Exception: # pylint: disable=broad-except - self.__logger.exception("cannot clean all ressources") + self.__logger.exception("Cannot clean all ressources") class TenantNetwork1(testcase.TestCase): @@ -174,6 +176,7 @@ class TenantNetwork1(testcase.TestCase): assert self.cloud self.cloud.remove_router_interface(self.router, self.subnet.id) self.cloud.delete_router(self.router.id) + self.cloud.delete_subnet(self.subnet.id) self.cloud.delete_network(self.network.id) except Exception: # pylint: disable=broad-except self.__logger.exception("cannot clean all ressources") @@ -213,4 +216,4 @@ class TenantNetwork2(TenantNetwork1): assert self.project self.project.clean() except Exception: # pylint: disable=broad-except - self.__logger.exception("cannot clean all ressources") + self.__logger.exception("Cannot clean all ressources")