refactor create shared network process to eliminate reduplicate 43/19643/1
authorSerenaFeng <feng.xiaowei@zte.com.cn>
Thu, 25 Aug 2016 03:20:17 +0000 (11:20 +0800)
committerMorgan Richomme <morgan.richomme@orange.com>
Fri, 26 Aug 2016 08:45:19 +0000 (08:45 +0000)
Some places shared network is created through create_network_full first,
then update it to shared, abstract a uniformed method to eliminate reduplicate

JIRA: FUNCTEST-437

Change-Id: I13c20ab061323188c5eb3b8c861674df38083c62
Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
(cherry picked from commit 007868e4810aaf9a2664b030281fe7c818fc3494)

testcases/OpenStack/rally/run_rally-cert.py
testcases/OpenStack/tempest/run_tempest.py
utils/openstack_utils.py

index 279bcde..f3eb79d 100755 (executable)
@@ -408,22 +408,12 @@ def main():
         exit(-1)
 
     logger.debug("Creating network '%s'..." % PRIVATE_NET_NAME)
-    network_dict = os_utils.create_network_full(neutron_client,
-                                                PRIVATE_NET_NAME,
-                                                PRIVATE_SUBNET_NAME,
-                                                ROUTER_NAME,
-                                                PRIVATE_SUBNET_CIDR)
+    network_dict = os_utils.create_shared_network_full(PRIVATE_NET_NAME,
+                                                       PRIVATE_SUBNET_NAME,
+                                                       ROUTER_NAME,
+                                                       PRIVATE_SUBNET_CIDR)
     if not network_dict:
-        logger.error("Failed to create network...")
-        exit(-1)
-    else:
-        if not os_utils.update_neutron_net(neutron_client,
-                                           network_dict['net_id'],
-                                           shared=True):
-            logger.error("Failed to update network...")
-            exit(-1)
-        else:
-            logger.debug("Network '%s' available..." % PRIVATE_NET_NAME)
+        exit(1)
 
     if args.test_name == "all":
         for test_name in tests:
index 10b22c9..306664f 100755 (executable)
@@ -125,7 +125,6 @@ def get_info(file_result):
 
 def create_tempest_resources():
     keystone_client = os_utils.get_keystone_client()
-    neutron_client = os_utils.get_neutron_client()
 
     logger.debug("Creating tenant and user for Tempest suite")
     tenant_id = os_utils.create_tenant(keystone_client,
@@ -140,22 +139,12 @@ def create_tempest_resources():
         logger.error("Error : Failed to create %s user" % USER_NAME)
 
     logger.debug("Creating private network for Tempest suite")
-    network_dic = os_utils.create_network_full(neutron_client,
-                                               PRIVATE_NET_NAME,
-                                               PRIVATE_SUBNET_NAME,
-                                               ROUTER_NAME,
-                                               PRIVATE_SUBNET_CIDR)
-    if network_dic:
-        if not os_utils.update_neutron_net(neutron_client,
-                                           network_dic['net_id'],
-                                           shared=True):
-            logger.error("Failed to update private network...")
-            exit(-1)
-        else:
-            logger.debug("Network '%s' is available..." % PRIVATE_NET_NAME)
-    else:
-        logger.error("Private network creation failed")
-        exit(-1)
+    network_dic = os_utils.create_shared_network_full(PRIVATE_NET_NAME,
+                                                      PRIVATE_SUBNET_NAME,
+                                                      ROUTER_NAME,
+                                                      PRIVATE_SUBNET_CIDR)
+    if not network_dic:
+        exit(1)
 
     logger.debug("Creating image for Tempest suite")
     _, image_id = os_utils.get_or_create_image(GLANCE_IMAGE_NAME,
index a7bc899..bc718bb 100755 (executable)
@@ -671,6 +671,28 @@ def create_network_full(neutron_client,
     return network_dic
 
 
+def create_shared_network_full(net_name, subnt_name, router_name, subnet_cidr):
+    neutron_client = get_neutron_client()
+
+    network_dic = create_network_full(neutron_client,
+                                      net_name,
+                                      subnt_name,
+                                      router_name,
+                                      subnet_cidr)
+    if network_dic:
+        if not update_neutron_net(neutron_client,
+                                  network_dic['net_id'],
+                                  shared=True):
+            logger.error("Failed to update network %s..." % net_name)
+            return None
+        else:
+            logger.debug("Network '%s' is available..." % net_name)
+    else:
+        logger.error("Network %s creation failed" % net_name)
+        return None
+    return network_dic
+
+
 def create_bgpvpn(neutron_client, **kwargs):
     # route_distinguishers
     # route_targets