Allow Transaction for Policy IP Pool Deletion
This patch allows IP Pool to be deleted with transaction, so that the IP pool can be removed with its child resources (i.e. pool subnets, ip allocations) in one API call. Change-Id: I873f7b714a313ff5b512a3898aedab9bd805163b
This commit is contained in:
parent
4643ed6647
commit
cf25fb0923
@ -164,6 +164,21 @@ class TestPolicyTransaction(policy_testcase.TestPolicyApi):
|
||||
|
||||
self.assert_infra_patch_call(expected_body)
|
||||
|
||||
def test_ip_address_pool_delete(self):
|
||||
|
||||
pool = {'id': 'pool1',
|
||||
'resource_type': 'IpAddressPool'}
|
||||
|
||||
with trans.NsxPolicyTransaction():
|
||||
self.policy_lib.ip_pool.delete(ip_pool_id=pool['id'])
|
||||
|
||||
expected_body = {'resource_type': 'Infra',
|
||||
'children': [{'resource_type': 'ChildIpAddressPool',
|
||||
'IpAddressPool': pool,
|
||||
'marked_for_delete': True}]}
|
||||
|
||||
self.assert_infra_patch_call(expected_body)
|
||||
|
||||
def test_groups_only(self):
|
||||
|
||||
g1 = {'resource_type': 'Group', 'id': 'group1',
|
||||
|
@ -3222,7 +3222,7 @@ class NsxPolicyIpPoolApi(NsxPolicyResourceBase):
|
||||
def delete(self, ip_pool_id, tenant=constants.POLICY_INFRA_TENANT):
|
||||
ip_pool_def = self.entry_def(ip_pool_id=ip_pool_id,
|
||||
tenant=tenant)
|
||||
self._delete_with_retry(ip_pool_def)
|
||||
self._delete_or_store(ip_pool_def)
|
||||
|
||||
def get(self, ip_pool_id, tenant=constants.POLICY_INFRA_TENANT,
|
||||
silent=False):
|
||||
|
Loading…
x
Reference in New Issue
Block a user