@@ -28,6 +28,7 @@ import (
28
28
"github.com/openshift/origin/test/extended/networking/kubevirt"
29
29
exutil "github.com/openshift/origin/test/extended/util"
30
30
"github.com/openshift/origin/test/extended/util/image"
31
+ utilnet "k8s.io/utils/net"
31
32
)
32
33
33
34
const kvIPRequestsAnnot = "network.kubevirt.io/addresses"
@@ -125,9 +126,21 @@ var _ = Describe("[sig-network][OCPFeatureGate:PersistentIPsForVirtualization][F
125
126
vmCreationParams .NetworkName = nadName
126
127
}
127
128
128
- if len (workloadConfig .preconfiguredIPs ) > 0 {
129
+ hasIPv4 , hasIPv6 , err := GetIPAddressFamily (oc )
130
+ Expect (err ).NotTo (HaveOccurred ())
131
+ var filteredPreconfiguredIPs []string
132
+ for _ , ip := range workloadConfig .preconfiguredIPs {
133
+ if utilnet .IsIPv4String (ip ) && hasIPv4 {
134
+ filteredPreconfiguredIPs = append (filteredPreconfiguredIPs , ip )
135
+ }
136
+ if utilnet .IsIPv6String (ip ) && hasIPv6 {
137
+ filteredPreconfiguredIPs = append (filteredPreconfiguredIPs , ip )
138
+ }
139
+ }
140
+
141
+ if len (filteredPreconfiguredIPs ) > 0 {
129
142
var err error
130
- vmCreationParams .PreconfiguredIP , err = formatAddressesAnnotation (workloadConfig . preconfiguredIPs )
143
+ vmCreationParams .PreconfiguredIP , err = formatAddressesAnnotation (filteredPreconfiguredIPs )
131
144
Expect (err ).NotTo (HaveOccurred ())
132
145
}
133
146
if workloadConfig .preconfiguredMAC != "" {
@@ -156,9 +169,9 @@ var _ = Describe("[sig-network][OCPFeatureGate:PersistentIPsForVirtualization][F
156
169
}
157
170
Expect (initialAddresses ).To (HaveLen (expectedNumberOfAddresses ))
158
171
159
- if len (workloadConfig . preconfiguredIPs ) > 0 {
172
+ if len (filteredPreconfiguredIPs ) > 0 {
160
173
By ("Verifying VM received the preconfigured IP address(es)" )
161
- for _ , expectedIP := range workloadConfig . preconfiguredIPs {
174
+ for _ , expectedIP := range filteredPreconfiguredIPs {
162
175
expectedIP = strings .TrimSpace (expectedIP )
163
176
Expect (initialAddresses ).To (ContainElement (expectedIP ), fmt .Sprintf ("Expected IP %s not found in VM addresses %v" , expectedIP , initialAddresses ))
164
177
}
0 commit comments