Also bring down BVIs and Loopbacks if they do not exist in the config
This commit is contained in:
@ -425,7 +425,7 @@ class Reconciler():
|
||||
|
||||
def prune_interfaces_down(self):
|
||||
""" Set admin-state down for all interfaces that are not in the config. """
|
||||
for ifname in self.vpp.get_qinx_interfaces() + self.vpp.get_dot1x_interfaces() + self.vpp.get_bondethernets() + self.vpp.get_vxlan_tunnels() + self.vpp.get_phys():
|
||||
for ifname in self.vpp.get_qinx_interfaces() + self.vpp.get_dot1x_interfaces() + self.vpp.get_bondethernets() + self.vpp.get_phys() + self.vpp.get_vxlan_tunnels() + self.vpp.get_bvis() + self.vpp.get_loopbacks():
|
||||
if not ifname in interface.get_interfaces(self.cfg):
|
||||
iface = self.vpp.config['interface_names'][ifname]
|
||||
if iface.flags & 1: # IF_STATUS_API_FLAG_ADMIN_UP
|
||||
|
@ -151,6 +151,14 @@ class VPPApi():
|
||||
dot1x_subints = [self.config['interfaces'][x].interface_name for x in self.config['interfaces'] if self.config['interfaces'][x].interface_dev_type in ['dpdk','bond'] and self.config['interfaces'][x].sub_id>0 and self.config['interfaces'][x].sub_inner_vlan_id==0]
|
||||
return dot1x_subints
|
||||
|
||||
def get_loopbacks(self):
|
||||
loopbacks = [self.config['interfaces'][x].interface_name for x in self.config['interfaces'] if self.config['interfaces'][x].interface_dev_type=='Loopback']
|
||||
return loopbacks
|
||||
|
||||
def get_bvis(self):
|
||||
bvis = [self.config['interfaces'][x].interface_name for x in self.config['interfaces'] if self.config['interfaces'][x].interface_dev_type=='BVI']
|
||||
return bvis
|
||||
|
||||
def get_phys(self):
|
||||
phys = [self.config['interfaces'][x].interface_name for x in self.config['interfaces'] if self.config['interfaces'][x].interface_dev_type=='dpdk' and self.config['interfaces'][x].sub_id==0]
|
||||
return phys
|
||||
|
Reference in New Issue
Block a user