Ensure tags are used to recover/clean ports
This patch ensures that, if tags are used, only the ports with the given tags are considered for recovering/cleanup Change-Id: I7953bc1122a77e5ed5f0cfd21ca81b1ac2d731a1
This commit is contained in:
parent
1e11b11d50
commit
046e4b31c7
|
@ -348,7 +348,11 @@ class BaseVIFPool(base.VIFPoolDriver):
|
|||
subports = {}
|
||||
subnets = {}
|
||||
|
||||
all_active_ports = self._get_ports_by_attrs(status='ACTIVE')
|
||||
attrs = {'status': 'ACTIVE'}
|
||||
tags = config.CONF.neutron_defaults.resource_tags
|
||||
if tags:
|
||||
attrs['tags'] = tags
|
||||
all_active_ports = self._get_ports_by_attrs(**attrs)
|
||||
in_use_ports = self._get_in_use_ports()
|
||||
|
||||
for port in all_active_ports:
|
||||
|
@ -462,8 +466,11 @@ class NeutronVIFPool(BaseVIFPool):
|
|||
neutron = clients.get_neutron_client()
|
||||
sg_current = {}
|
||||
if not config.CONF.kubernetes.port_debug:
|
||||
kuryr_ports = self._get_ports_by_attrs(
|
||||
device_owner=kl_const.DEVICE_OWNER)
|
||||
attrs = {'device_owner': kl_const.DEVICE_OWNER}
|
||||
tags = config.CONF.neutron_defaults.resource_tags
|
||||
if tags:
|
||||
attrs['tags'] = tags
|
||||
kuryr_ports = self._get_ports_by_attrs(**attrs)
|
||||
for port in kuryr_ports:
|
||||
if port['id'] in self._recyclable_ports:
|
||||
sg_current[port['id']] = tuple(sorted(
|
||||
|
@ -509,13 +516,16 @@ class NeutronVIFPool(BaseVIFPool):
|
|||
LOG.debug('Port already recycled: %s', port_id)
|
||||
|
||||
def _recover_precreated_ports(self):
|
||||
attrs = {'device_owner': kl_const.DEVICE_OWNER}
|
||||
tags = config.CONF.neutron_defaults.resource_tags
|
||||
if tags:
|
||||
attrs['tags'] = tags
|
||||
|
||||
if config.CONF.kubernetes.port_debug:
|
||||
available_ports = self._get_ports_by_attrs(
|
||||
name=constants.KURYR_PORT_NAME, device_owner=[
|
||||
kl_const.DEVICE_OWNER])
|
||||
attrs['name'] = constants.KURYR_PORT_NAME
|
||||
available_ports = self._get_ports_by_attrs(**attrs)
|
||||
else:
|
||||
kuryr_ports = self._get_ports_by_attrs(
|
||||
device_owner=kl_const.DEVICE_OWNER)
|
||||
kuryr_ports = self._get_ports_by_attrs(**attrs)
|
||||
in_use_ports = self._get_in_use_ports()
|
||||
available_ports = [port for port in kuryr_ports
|
||||
if port['id'] not in in_use_ports]
|
||||
|
@ -683,8 +693,11 @@ class NestedVIFPool(BaseVIFPool):
|
|||
neutron = clients.get_neutron_client()
|
||||
sg_current = {}
|
||||
if not config.CONF.kubernetes.port_debug:
|
||||
kuryr_subports = self._get_ports_by_attrs(
|
||||
device_owner=['trunk:subport', kl_const.DEVICE_OWNER])
|
||||
attrs = {'device_owner': ['trunk:subport', kl_const.DEVICE_OWNER]}
|
||||
tags = config.CONF.neutron_defaults.resource_tags
|
||||
if tags:
|
||||
attrs['tags'] = tags
|
||||
kuryr_subports = self._get_ports_by_attrs(**attrs)
|
||||
for subport in kuryr_subports:
|
||||
if subport['id'] in self._recyclable_ports:
|
||||
sg_current[subport['id']] = tuple(sorted(
|
||||
|
|
Loading…
Reference in New Issue