NSX|P: Fix devstack cleanup to use the default domain
The policy plugin do not use per-tenant domain any more, so it should delete objects from the default domain instead. Change-Id: Ia93d9e1c888105305db880e8166c98a3d2fcad9f
This commit is contained in:
parent
b2f3f49e9a
commit
cceaa376b9
@ -28,6 +28,7 @@ from vmware_nsxlib.v3 import config
|
|||||||
from vmware_nsxlib.v3 import exceptions
|
from vmware_nsxlib.v3 import exceptions
|
||||||
from vmware_nsxlib.v3 import nsx_constants
|
from vmware_nsxlib.v3 import nsx_constants
|
||||||
from vmware_nsxlib.v3 import policy
|
from vmware_nsxlib.v3 import policy
|
||||||
|
from vmware_nsxlib.v3.policy import constants as policy_constants
|
||||||
|
|
||||||
|
|
||||||
class NeutronNsxDB(object):
|
class NeutronNsxDB(object):
|
||||||
@ -92,18 +93,6 @@ class NSXClient(object):
|
|||||||
else:
|
else:
|
||||||
self.NsxLib = None
|
self.NsxLib = None
|
||||||
|
|
||||||
def get_nsx_os_domains(self):
|
|
||||||
domains = self.get_os_resources(self.nsxpolicy.domain.list())
|
|
||||||
return [d['id'] for d in domains]
|
|
||||||
|
|
||||||
def cleanup_domains(self, domains):
|
|
||||||
"""Delete all OS created NSX Policy segments ports per segment"""
|
|
||||||
for domain_id in domains:
|
|
||||||
try:
|
|
||||||
self.nsxpolicy.domain.delete(domain_id)
|
|
||||||
except exceptions.ManagerError as e:
|
|
||||||
print("Failed to delete domain %s: %s" % (domain_id, e))
|
|
||||||
|
|
||||||
def get_os_resources(self, resources):
|
def get_os_resources(self, resources):
|
||||||
"""
|
"""
|
||||||
Get all logical resources created by OpenStack
|
Get all logical resources created by OpenStack
|
||||||
@ -363,7 +352,7 @@ class NSXClient(object):
|
|||||||
try:
|
try:
|
||||||
self.nsxpolicy.service.delete(srv['id'])
|
self.nsxpolicy.service.delete(srv['id'])
|
||||||
except exceptions.ManagerError as e:
|
except exceptions.ManagerError as e:
|
||||||
print("Failed to delete service %s: %s" % (srv['id'], e))
|
print("Failed to delete rule service %s: %s" % (srv['id'], e))
|
||||||
|
|
||||||
def _cleanup_lb_resource(self, service, service_name):
|
def _cleanup_lb_resource(self, service, service_name):
|
||||||
r_list = self.get_os_resources(service.list())
|
r_list = self.get_os_resources(service.list())
|
||||||
@ -432,19 +421,15 @@ class NSXClient(object):
|
|||||||
Global cleanup steps:
|
Global cleanup steps:
|
||||||
- Tier1 routers
|
- Tier1 routers
|
||||||
- Segments and ports
|
- Segments and ports
|
||||||
|
- rules and services
|
||||||
"""
|
"""
|
||||||
domains = self.get_nsx_os_domains()
|
print("Cleaning up openstack resources")
|
||||||
for domain_id in domains:
|
self.cleanup_security_groups(policy_constants.DEFAULT_DOMAIN)
|
||||||
print("Cleaning up openstack resources from domain %s" % domain_id)
|
|
||||||
self.cleanup_security_groups(domain_id)
|
|
||||||
|
|
||||||
print("Cleaning up openstack global resources")
|
|
||||||
self.cleanup_segments()
|
self.cleanup_segments()
|
||||||
self.cleanup_load_balancers()
|
self.cleanup_load_balancers()
|
||||||
self.cleanup_nsx_logical_dhcp_servers()
|
self.cleanup_nsx_logical_dhcp_servers()
|
||||||
self.cleanup_tier1_routers()
|
self.cleanup_tier1_routers()
|
||||||
self.cleanup_rules_services()
|
self.cleanup_rules_services()
|
||||||
self.cleanup_domains(domains)
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
Loading…
Reference in New Issue
Block a user