Skip to content

Commit 6f88e19

Browse files
authored
feat(controller): skip appending VM LSPs if default Multus network is present (#5106)
Updated the logic in getVMLsps to check for a default Multus network in VM specifications. If a default Multus network is found, the corresponding VM LSP will not be appended to the list. This change ensures that only VMs without a default Multus network are processed for LSP creation. Signed-off-by: Mengxin Liu <liumengxinfly@gmail.com>
1 parent 9fc5197 commit 6f88e19

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

pkg/controller/gc.go

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -968,8 +968,17 @@ func (c *Controller) getVMLsps() []string {
968968
continue
969969
}
970970
for _, vm := range vms.Items {
971-
vmLsp := ovs.PodNameToPortName(vm.Name, ns.Name, util.OvnProvider)
972-
vmLsps = append(vmLsps, vmLsp)
971+
defaultMultus := false
972+
for _, network := range vm.Spec.Template.Spec.Networks {
973+
if network.Multus != nil && network.Multus.Default {
974+
defaultMultus = true
975+
break
976+
}
977+
}
978+
if !defaultMultus {
979+
vmLsp := ovs.PodNameToPortName(vm.Name, ns.Name, util.OvnProvider)
980+
vmLsps = append(vmLsps, vmLsp)
981+
}
973982

974983
attachNets, err := nadutils.ParseNetworkAnnotation(vm.Spec.Template.ObjectMeta.Annotations[nadv1.NetworkAttachmentAnnot], vm.Namespace)
975984
if err != nil {

0 commit comments

Comments
 (0)