Skip to content

Commit 26fc348

Browse files
committed
Filter preconfiguredIPs based on cluster IP family support
Use GetIPAddressFamily and utilnet IP string helpers to filter preconfigured IPs to only include addresses supported by the cluster under test. Signed-off-by: Patryk Diak <[email protected]>
1 parent 3ded19e commit 26fc348

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

test/extended/networking/livemigration.go

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import (
2828
"github.com/openshift/origin/test/extended/networking/kubevirt"
2929
exutil "github.com/openshift/origin/test/extended/util"
3030
"github.com/openshift/origin/test/extended/util/image"
31+
utilnet "k8s.io/utils/net"
3132
)
3233

3334
var _ = Describe("[sig-network][OCPFeatureGate:PersistentIPsForVirtualization][Feature:Layer2LiveMigration] Kubevirt Virtual Machines", func() {
@@ -123,9 +124,21 @@ var _ = Describe("[sig-network][OCPFeatureGate:PersistentIPsForVirtualization][F
123124
vmCreationParams.NetworkName = nadName
124125
}
125126

126-
if len(workloadConfig.preconfiguredIPs) > 0 {
127+
hasIPv4, hasIPv6, err := GetIPAddressFamily(oc)
128+
Expect(err).NotTo(HaveOccurred())
129+
var filteredPreconfiguredIPs []string
130+
for _, ip := range workloadConfig.preconfiguredIPs {
131+
if utilnet.IsIPv4String(ip) && hasIPv4 {
132+
filteredPreconfiguredIPs = append(filteredPreconfiguredIPs, ip)
133+
}
134+
if utilnet.IsIPv6String(ip) && hasIPv6 {
135+
filteredPreconfiguredIPs = append(filteredPreconfiguredIPs, ip)
136+
}
137+
}
138+
139+
if len(filteredPreconfiguredIPs) > 0 {
127140
var err error
128-
vmCreationParams.PreconfiguredIP, err = formatAddressesAnnotation(workloadConfig.preconfiguredIPs)
141+
vmCreationParams.PreconfiguredIP, err = formatAddressesAnnotation(filteredPreconfiguredIPs)
129142
Expect(err).NotTo(HaveOccurred())
130143
}
131144
if workloadConfig.preconfiguredMAC != "" {
@@ -154,9 +167,9 @@ var _ = Describe("[sig-network][OCPFeatureGate:PersistentIPsForVirtualization][F
154167
}
155168
Expect(initialAddresses).To(HaveLen(expectedNumberOfAddresses))
156169

157-
if len(workloadConfig.preconfiguredIPs) > 0 {
170+
if len(filteredPreconfiguredIPs) > 0 {
158171
By("Verifying VM received the preconfigured IP address(es)")
159-
for _, expectedIP := range workloadConfig.preconfiguredIPs {
172+
for _, expectedIP := range filteredPreconfiguredIPs {
160173
expectedIP = strings.TrimSpace(expectedIP)
161174
Expect(initialAddresses).To(ContainElement(expectedIP), fmt.Sprintf("Expected IP %s not found in VM addresses %v", expectedIP, initialAddresses))
162175
}

0 commit comments

Comments
 (0)