diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 412422d226..8f8a945f75 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -286,6 +286,7 @@ jobs: - name: Free up disk space run: | + sudo rm -rf /usr/local/lib/android/sdk sudo apt-get update sudo eatmydata apt-get purge --auto-remove -y \ azure-cli aspnetcore-* dotnet-* ghc-* firefox \ @@ -434,6 +435,7 @@ jobs: - name: Free up disk space run: | + sudo rm -rf /usr/local/lib/android/sdk sudo apt-get update sudo eatmydata apt-get purge --auto-remove -y \ azure-cli aspnetcore-* dotnet-* ghc-* firefox \ diff --git a/go-controller/pkg/ovn/base_network_controller.go b/go-controller/pkg/ovn/base_network_controller.go index c59add71a6..d32f4282e8 100644 --- a/go-controller/pkg/ovn/base_network_controller.go +++ b/go-controller/pkg/ovn/base_network_controller.go @@ -796,6 +796,11 @@ func (bnc *BaseNetworkController) nodeZoneClusterChanged(oldNode, newNode *kapi. } func (bnc *BaseNetworkController) findMigratablePodIPsForSubnets(subnets []*net.IPNet) ([]*net.IPNet, error) { + // live migration is not supported in combination with secondary networks + if bnc.IsSecondary() { + return nil, nil + } + ipSet := sets.New[string]() ipList := []*net.IPNet{} liveMigratablePods, err := kubevirt.FindLiveMigratablePods(bnc.watchFactory) @@ -816,7 +821,16 @@ func (bnc *BaseNetworkController) findMigratablePodIPsForSubnets(subnets []*net. } podAnnotation, err := util.UnmarshalPodAnnotation(liveMigratablePod.Annotations, bnc.GetNetworkName()) if err != nil { - return nil, err + // even though it can be normal to not have an annotation now, live + // migration is a sensible process that might be used when draining + // nodes on upgrades, so log a warning in every case to have the + // information available + klog.Warningf("Could not get pod annotation of pod %s/%s for network %s: %v", + liveMigratablePod.Namespace, + liveMigratablePod.Name, + bnc.GetNetworkName(), + err) + continue } for _, podIP := range podAnnotation.IPs { if util.IsContainedInAnyCIDR(podIP, subnets...) {