Clean up stale routers and gateway routers. 27/59027/4
authordimitris.tsiolakis <dmts@intracom-telecom.com>
Tue, 26 Jun 2018 08:20:31 +0000 (11:20 +0300)
committerdimitris.tsiolakis <dmts@intracom-telecom.com>
Thu, 28 Jun 2018 10:53:10 +0000 (13:53 +0300)
During snaps_smoke test all floating IPs are allocated
by routers as external IP's, as a result there are no
more floating IPs left.
This patch clean up stale routers and free the assigned
IPs.

JIRA: SNAPS-318

Change-Id: Ifbf01ce38db63315e692dca9ffa5d993dbfa4337
Signed-off-by: dimitris.tsiolakis <dmts@intracom-telecom.com>
sdnvpn/test/functest/run_sdnvpn_tests.py

index 23a62e6..c05876d 100644 (file)
@@ -71,6 +71,24 @@ class SdnvpnFunctest(feature.Feature):
                 os_utils.delete_floating_ip(
                     neutron_client, floating_ip['id'])
 
+        # Workaround for
+        # https://jira.opnfv.org/browse/SNAPS-318
+        # Clean up the stale routers
+        logger.info("Cleaning up the stale routers")
+        ports = os_utils.get_port_list(neutron_client)
+        if ports is not None:
+            for port in ports:
+                if port['device_owner'] == 'network:router_interface':
+                    os_utils.delete_neutron_port(
+                            neutron_client, port['id'])
+        routers = os_utils.get_router_list(neutron_client)
+        if routers is not None:
+            for router in routers:
+                os_utils.remove_gateway_router(
+                    neutron_client, router['id'])
+                os_utils.delete_neutron_router(
+                    neutron_client, router['id'])
+
         with open(COMMON_CONFIG.config_file) as f:
             config_yaml = yaml.safe_load(f)