@@ -43,7 +43,6 @@ import (
43
43
endptspkg "k8s.io/kubernetes/pkg/api/v1/endpoints"
44
44
api "k8s.io/kubernetes/pkg/apis/core"
45
45
"k8s.io/kubernetes/pkg/controller"
46
- endpointutil "k8s.io/kubernetes/pkg/controller/util/endpoint"
47
46
"k8s.io/kubernetes/pkg/features"
48
47
utilpointer "k8s.io/utils/pointer"
49
48
)
@@ -67,7 +66,6 @@ func testPod(namespace string, id int, nPorts int, isReady bool, makeDualstack b
67
66
Containers : []v1.Container {{Ports : []v1.ContainerPort {}}},
68
67
},
69
68
Status : v1.PodStatus {
70
- PodIP : fmt .Sprintf ("1.2.3.%d" , 4 + id ),
71
69
Conditions : []v1.PodCondition {
72
70
{
73
71
Type : v1 .PodReady ,
@@ -83,16 +81,11 @@ func testPod(namespace string, id int, nPorts int, isReady bool, makeDualstack b
83
81
p .Spec .Containers [0 ].Ports = append (p .Spec .Containers [0 ].Ports ,
84
82
v1.ContainerPort {Name : fmt .Sprintf ("port%d" , j ), ContainerPort : int32 (8080 + j )})
85
83
}
84
+ p .Status .PodIPs = append (p .Status .PodIPs , v1.PodIP {IP : fmt .Sprintf ("1.2.3.%d" , 4 + id )})
86
85
if makeDualstack {
87
- p .Status .PodIPs = []v1.PodIP {
88
- {
89
- IP : p .Status .PodIP ,
90
- },
91
- {
92
- IP : fmt .Sprintf ("2000::%d" , id ),
93
- },
94
- }
86
+ p .Status .PodIPs = append (p .Status .PodIPs , v1.PodIP {IP : fmt .Sprintf ("2000::%d" , id )})
95
87
}
88
+ p .Status .PodIP = p .Status .PodIPs [0 ].IP
96
89
97
90
return p
98
91
}
@@ -1238,169 +1231,6 @@ func TestPodToEndpointAddressForService(t *testing.T) {
1238
1231
1239
1232
}
1240
1233
1241
- func TestPodToEndpointAddress (t * testing.T ) {
1242
- podStore := cache .NewStore (cache .DeletionHandlingMetaNamespaceKeyFunc )
1243
- ns := "test"
1244
- addPods (podStore , ns , 1 , 1 , 0 , false )
1245
- pods := podStore .List ()
1246
- if len (pods ) != 1 {
1247
- t .Errorf ("podStore size: expected: %d, got: %d" , 1 , len (pods ))
1248
- return
1249
- }
1250
- pod := pods [0 ].(* v1.Pod )
1251
- epa := podToEndpointAddress (pod )
1252
- if epa .IP != pod .Status .PodIP {
1253
- t .Errorf ("IP: expected: %s, got: %s" , pod .Status .PodIP , epa .IP )
1254
- }
1255
- if * (epa .NodeName ) != pod .Spec .NodeName {
1256
- t .Errorf ("NodeName: expected: %s, got: %s" , pod .Spec .NodeName , * (epa .NodeName ))
1257
- }
1258
- if epa .TargetRef .Kind != "Pod" {
1259
- t .Errorf ("TargetRef.Kind: expected: %s, got: %s" , "Pod" , epa .TargetRef .Kind )
1260
- }
1261
- if epa .TargetRef .Namespace != pod .ObjectMeta .Namespace {
1262
- t .Errorf ("TargetRef.Kind: expected: %s, got: %s" , pod .ObjectMeta .Namespace , epa .TargetRef .Namespace )
1263
- }
1264
- if epa .TargetRef .Name != pod .ObjectMeta .Name {
1265
- t .Errorf ("TargetRef.Kind: expected: %s, got: %s" , pod .ObjectMeta .Name , epa .TargetRef .Name )
1266
- }
1267
- if epa .TargetRef .UID != pod .ObjectMeta .UID {
1268
- t .Errorf ("TargetRef.Kind: expected: %s, got: %s" , pod .ObjectMeta .UID , epa .TargetRef .UID )
1269
- }
1270
- if epa .TargetRef .ResourceVersion != pod .ObjectMeta .ResourceVersion {
1271
- t .Errorf ("TargetRef.Kind: expected: %s, got: %s" , pod .ObjectMeta .ResourceVersion , epa .TargetRef .ResourceVersion )
1272
- }
1273
- }
1274
-
1275
- func TestPodChanged (t * testing.T ) {
1276
- podStore := cache .NewStore (cache .DeletionHandlingMetaNamespaceKeyFunc )
1277
- ns := "test"
1278
- addPods (podStore , ns , 1 , 1 , 0 , false )
1279
- pods := podStore .List ()
1280
- if len (pods ) != 1 {
1281
- t .Errorf ("podStore size: expected: %d, got: %d" , 1 , len (pods ))
1282
- return
1283
- }
1284
- oldPod := pods [0 ].(* v1.Pod )
1285
- newPod := oldPod .DeepCopy ()
1286
-
1287
- if podChangedHelper (oldPod , newPod , endpointChanged ) {
1288
- t .Errorf ("Expected pod to be unchanged for copied pod" )
1289
- }
1290
-
1291
- newPod .Spec .NodeName = "changed"
1292
- if ! podChangedHelper (oldPod , newPod , endpointChanged ) {
1293
- t .Errorf ("Expected pod to be changed for pod with NodeName changed" )
1294
- }
1295
- newPod .Spec .NodeName = oldPod .Spec .NodeName
1296
-
1297
- newPod .ObjectMeta .ResourceVersion = "changed"
1298
- if podChangedHelper (oldPod , newPod , endpointChanged ) {
1299
- t .Errorf ("Expected pod to be unchanged for pod with only ResourceVersion changed" )
1300
- }
1301
- newPod .ObjectMeta .ResourceVersion = oldPod .ObjectMeta .ResourceVersion
1302
-
1303
- newPod .Status .PodIP = "1.2.3.1"
1304
- if ! podChangedHelper (oldPod , newPod , endpointChanged ) {
1305
- t .Errorf ("Expected pod to be changed with pod IP address change" )
1306
- }
1307
- newPod .Status .PodIP = oldPod .Status .PodIP
1308
-
1309
- /* dual stack tests */
1310
- // primary changes, because changing IPs is done by changing sandbox
1311
- // case 1: add new secondary IP
1312
- newPod .Status .PodIP = "1.1.3.1"
1313
- newPod .Status .PodIPs = []v1.PodIP {
1314
- {
1315
- IP : "1.1.3.1" ,
1316
- },
1317
- {
1318
- IP : "2000::1" ,
1319
- },
1320
- }
1321
- if ! podChangedHelper (oldPod , newPod , endpointChanged ) {
1322
- t .Errorf ("Expected pod to be changed with adding secondary IP" )
1323
- }
1324
- // reset
1325
- newPod .Status .PodIPs = nil
1326
- newPod .Status .PodIP = oldPod .Status .PodIP
1327
-
1328
- // case 2: removing a secondary IP
1329
- saved := oldPod .Status .PodIP
1330
- oldPod .Status .PodIP = "1.1.3.1"
1331
- oldPod .Status .PodIPs = []v1.PodIP {
1332
- {
1333
- IP : "1.1.3.1" ,
1334
- },
1335
- {
1336
- IP : "2000::1" ,
1337
- },
1338
- }
1339
-
1340
- newPod .Status .PodIP = "1.2.3.4"
1341
- newPod .Status .PodIPs = []v1.PodIP {
1342
- {
1343
- IP : "1.2.3.4" ,
1344
- },
1345
- }
1346
-
1347
- // reset
1348
- oldPod .Status .PodIPs = nil
1349
- newPod .Status .PodIPs = nil
1350
- oldPod .Status .PodIP = saved
1351
- newPod .Status .PodIP = saved
1352
- // case 3: change secondary
1353
- // case 2: removing a secondary IP
1354
- saved = oldPod .Status .PodIP
1355
- oldPod .Status .PodIP = "1.1.3.1"
1356
- oldPod .Status .PodIPs = []v1.PodIP {
1357
- {
1358
- IP : "1.1.3.1" ,
1359
- },
1360
- {
1361
- IP : "2000::1" ,
1362
- },
1363
- }
1364
-
1365
- newPod .Status .PodIP = "1.2.3.4"
1366
- newPod .Status .PodIPs = []v1.PodIP {
1367
- {
1368
- IP : "1.2.3.4" ,
1369
- },
1370
- {
1371
- IP : "2000::2" ,
1372
- },
1373
- }
1374
-
1375
- // reset
1376
- oldPod .Status .PodIPs = nil
1377
- newPod .Status .PodIPs = nil
1378
- oldPod .Status .PodIP = saved
1379
- newPod .Status .PodIP = saved
1380
-
1381
- /* end dual stack testing */
1382
-
1383
- newPod .ObjectMeta .Name = "wrong-name"
1384
- if ! podChangedHelper (oldPod , newPod , endpointChanged ) {
1385
- t .Errorf ("Expected pod to be changed with pod name change" )
1386
- }
1387
- newPod .ObjectMeta .Name = oldPod .ObjectMeta .Name
1388
-
1389
- saveConditions := oldPod .Status .Conditions
1390
- oldPod .Status .Conditions = nil
1391
- if ! podChangedHelper (oldPod , newPod , endpointChanged ) {
1392
- t .Errorf ("Expected pod to be changed with pod readiness change" )
1393
- }
1394
- oldPod .Status .Conditions = saveConditions
1395
-
1396
- now := metav1 .NewTime (time .Now ().UTC ())
1397
- newPod .ObjectMeta .DeletionTimestamp = & now
1398
- if ! podChangedHelper (oldPod , newPod , endpointChanged ) {
1399
- t .Errorf ("Expected pod to be changed with DeletionTimestamp change" )
1400
- }
1401
- newPod .ObjectMeta .DeletionTimestamp = oldPod .ObjectMeta .DeletionTimestamp .DeepCopy ()
1402
- }
1403
-
1404
1234
func TestLastTriggerChangeTimeAnnotation (t * testing.T ) {
1405
1235
ns := "other"
1406
1236
testServer , endpointsHandler := makeTestServer (t , ns )
@@ -1680,6 +1510,7 @@ func TestPodUpdatesBatching(t *testing.T) {
1680
1510
oldPod := old .(* v1.Pod )
1681
1511
newPod := oldPod .DeepCopy ()
1682
1512
newPod .Status .PodIP = update .podIP
1513
+ newPod .Status .PodIPs [0 ].IP = update .podIP
1683
1514
newPod .ResourceVersion = strconv .Itoa (resourceVersion )
1684
1515
resourceVersion ++
1685
1516
@@ -1996,8 +1827,3 @@ func stringVal(str *string) string {
1996
1827
}
1997
1828
return * str
1998
1829
}
1999
-
2000
- func podChangedHelper (oldPod , newPod * v1.Pod , endpointChanged endpointutil.EndpointsMatch ) bool {
2001
- podChanged , _ := endpointutil .PodChanged (oldPod , newPod , endpointChanged )
2002
- return podChanged
2003
- }
0 commit comments