From 25817782646a52b622cd732a43bffb123bcbf6f9 Mon Sep 17 00:00:00 2001 From: zhanghao Date: Wed, 29 Jan 2020 13:05:55 -0500 Subject: [PATCH] [OVN] Remove SG dependency on original port dict The 'port_object' needs to be removed, so the current security group dependency on it needs to be resolved first. The 'security_group_ids' has been stored in the 'external_ids' of the logical switch port. When updating or deleting a port, the security groups can be obtained directly from 'ovn_port'. Change-Id: I764f3426fe0e38094b77b69f4cb752d042f4d701 Partial-Bug: #1863987 --- .../ovn/mech_driver/ovsdb/ovn_client.py | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py b/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py index 9ae7e3c4217..0663d5bf4a1 100644 --- a/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py +++ b/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py @@ -420,17 +420,6 @@ class OVNClient(object): db_rev.bump_revision(admin_context, port, ovn_const.TYPE_PORTS) - # TODO(lucasagomes): Remove this helper method in the Rocky release - def _get_lsp_backward_compat_sgs(self, ovn_port, port_object=None, - skip_trusted_port=True): - if ovn_const.OVN_SG_IDS_EXT_ID_KEY in ovn_port.external_ids: - return utils.get_ovn_port_security_groups( - ovn_port, skip_trusted_port=skip_trusted_port) - elif port_object is not None: - return utils.get_lsp_security_groups( - port_object, skip_trusted_port=skip_trusted_port) - return [] - def _set_unset_virtual_port_type(self, context, txn, parent_port, addresses, unset=False): cmd = self._nb_idl.set_lswitch_port_to_virtual_type @@ -546,8 +535,7 @@ class OVNClient(object): **columns_dict)) # Determine if security groups or fixed IPs are updated. - old_sg_ids = set(self._get_lsp_backward_compat_sgs( - ovn_port, port_object=port_object)) + old_sg_ids = set(utils.get_ovn_port_security_groups(ovn_port)) new_sg_ids = set(utils.get_lsp_security_groups(port)) detached_sg_ids = old_sg_ids - new_sg_ids attached_sg_ids = new_sg_ids - old_sg_ids @@ -747,8 +735,8 @@ class OVNClient(object): addresses = utils.sort_ips_by_version( utils.get_ovn_port_addresses(ovn_port)) - sec_groups = self._get_lsp_backward_compat_sgs( - ovn_port, port_object=port_object, skip_trusted_port=False) + sec_groups = utils.get_ovn_port_security_groups( + ovn_port, skip_trusted_port=False) for sg_id in sec_groups: for ip_version, addr_list in addresses.items(): if not addr_list: