Create network via admin user 43/61743/3
authorCédric Ollivier <cedric.ollivier@orange.com>
Mon, 3 Sep 2018 06:10:03 +0000 (08:10 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Mon, 3 Sep 2018 16:47:44 +0000 (18:47 +0200)
It creates the network via admin user as segmentation id may be set.

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

functest/core/singlevm.py
functest/core/tenantnetwork.py

index 78f8ab9..71ed069 100644 (file)
@@ -58,7 +58,6 @@ class VmReady1(tenantnetwork.TenantNetwork1):
         if "case_name" not in kwargs:
             kwargs["case_name"] = 'vmready1'
         super(VmReady1, self).__init__(**kwargs)
-        self.orig_cloud = self.cloud
         self.image = None
         self.flavor = None
 
index 40b25e7..80087d0 100644 (file)
@@ -133,10 +133,10 @@ class TenantNetwork1(testcase.TestCase):
         self.res_dir = os.path.join(
             getattr(config.CONF, 'dir_results'), self.case_name)
         try:
-            self.cloud = shade.OperatorCloud(
+            self.cloud = self.orig_cloud = shade.OperatorCloud(
                 cloud_config=os_client_config.get_config())
         except Exception:  # pylint: disable=broad-except
-            self.cloud = None
+            self.cloud = self.orig_cloud = None
             self.ext_net = None
             self.__logger.exception("Cannot connect to Cloud")
         try:
@@ -198,9 +198,15 @@ class TenantNetwork1(testcase.TestCase):
         if hasattr(config.CONF, '{}_segmentation_id'.format(self.case_name)):
             provider["segmentation_id"] = getattr(
                 config.CONF, '{}_segmentation_id'.format(self.case_name))
-        self.network = self.cloud.create_network(
+        domain = self.orig_cloud.get_domain(
+            name_or_id=self.orig_cloud.auth.get(
+                "project_domain_name", "Default"))
+        project = self.orig_cloud.get_project(
+            self.cloud.auth['project_name'],
+            domain_id=domain.id)
+        self.network = self.orig_cloud.create_network(
             '{}-net_{}'.format(self.case_name, self.guid),
-            provider=provider,
+            provider=provider, project_id=project.id,
             shared=self.shared_network)
         self.__logger.debug("network: %s", self.network)