Skip to content

Commit c4df69d

Browse files
authored
Merge pull request kubernetes#88024 from notpad/weight
Add RegisterPluginAsExtensionsWithWeight
2 parents 92be16c + 89066cc commit c4df69d

File tree

3 files changed

+42
-41
lines changed

3 files changed

+42
-41
lines changed

pkg/scheduler/core/generic_scheduler_test.go

Lines changed: 28 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -616,7 +616,6 @@ func TestGenericScheduler(t *testing.T) {
616616
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
617617
st.RegisterPluginAsExtensions(
618618
podtopologyspread.Name,
619-
1,
620619
podtopologyspread.New,
621620
"PreFilter",
622621
"Filter",
@@ -664,7 +663,6 @@ func TestGenericScheduler(t *testing.T) {
664663
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
665664
st.RegisterPluginAsExtensions(
666665
podtopologyspread.Name,
667-
1,
668666
podtopologyspread.New,
669667
"PreFilter",
670668
"Filter",
@@ -1339,7 +1337,7 @@ func TestSelectNodesForPreemption(t *testing.T) {
13391337
name: "a pod that fits on both machines when lower priority pods are preempted",
13401338
registerPlugins: []st.RegisterPluginFunc{
13411339
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1342-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1340+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
13431341
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
13441342
},
13451343
nodes: []string{"machine1", "machine2"},
@@ -1354,7 +1352,7 @@ func TestSelectNodesForPreemption(t *testing.T) {
13541352
name: "a pod that would fit on the machines, but other pods running are higher priority",
13551353
registerPlugins: []st.RegisterPluginFunc{
13561354
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1357-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1355+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
13581356
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
13591357
},
13601358
nodes: []string{"machine1", "machine2"},
@@ -1369,7 +1367,7 @@ func TestSelectNodesForPreemption(t *testing.T) {
13691367
name: "medium priority pod is preempted, but lower priority one stays as it is small",
13701368
registerPlugins: []st.RegisterPluginFunc{
13711369
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1372-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1370+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
13731371
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
13741372
},
13751373
nodes: []string{"machine1", "machine2"},
@@ -1385,7 +1383,7 @@ func TestSelectNodesForPreemption(t *testing.T) {
13851383
name: "mixed priority pods are preempted",
13861384
registerPlugins: []st.RegisterPluginFunc{
13871385
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1388-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1386+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
13891387
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
13901388
},
13911389
nodes: []string{"machine1", "machine2"},
@@ -1403,7 +1401,7 @@ func TestSelectNodesForPreemption(t *testing.T) {
14031401
name: "mixed priority pods are preempted, pick later StartTime one when priorities are equal",
14041402
registerPlugins: []st.RegisterPluginFunc{
14051403
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1406-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1404+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
14071405
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
14081406
},
14091407
nodes: []string{"machine1", "machine2"},
@@ -1421,8 +1419,8 @@ func TestSelectNodesForPreemption(t *testing.T) {
14211419
name: "pod with anti-affinity is preempted",
14221420
registerPlugins: []st.RegisterPluginFunc{
14231421
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1424-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1425-
st.RegisterPluginAsExtensions(interpodaffinity.Name, 1, interpodaffinity.New, "Filter", "PreFilter"),
1422+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
1423+
st.RegisterPluginAsExtensions(interpodaffinity.Name, interpodaffinity.New, "Filter", "PreFilter"),
14261424
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
14271425
},
14281426
nodes: []string{"machine1", "machine2"},
@@ -1459,7 +1457,6 @@ func TestSelectNodesForPreemption(t *testing.T) {
14591457
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
14601458
st.RegisterPluginAsExtensions(
14611459
podtopologyspread.Name,
1462-
1,
14631460
podtopologyspread.New,
14641461
"PreFilter",
14651462
"Filter",
@@ -1541,7 +1538,7 @@ func TestSelectNodesForPreemption(t *testing.T) {
15411538
name: "get Unschedulable in the preemption phase when the filter plugins filtering the nodes",
15421539
registerPlugins: []st.RegisterPluginFunc{
15431540
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1544-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1541+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
15451542
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
15461543
},
15471544
nodes: []string{"machine1", "machine2"},
@@ -1557,7 +1554,7 @@ func TestSelectNodesForPreemption(t *testing.T) {
15571554
name: "preemption with violation of same pdb",
15581555
registerPlugins: []st.RegisterPluginFunc{
15591556
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1560-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1557+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
15611558
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
15621559
},
15631560
nodes: []string{"machine1"},
@@ -1673,7 +1670,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
16731670
name: "No node needs preemption",
16741671
registerPlugins: []st.RegisterPluginFunc{
16751672
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1676-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1673+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
16771674
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
16781675
},
16791676
nodes: []string{"machine1"},
@@ -1686,7 +1683,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
16861683
name: "a pod that fits on both machines when lower priority pods are preempted",
16871684
registerPlugins: []st.RegisterPluginFunc{
16881685
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1689-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1686+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
16901687
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
16911688
},
16921689
nodes: []string{"machine1", "machine2"},
@@ -1701,7 +1698,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
17011698
name: "a pod that fits on a machine with no preemption",
17021699
registerPlugins: []st.RegisterPluginFunc{
17031700
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1704-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1701+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
17051702
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
17061703
},
17071704
nodes: []string{"machine1", "machine2", "machine3"},
@@ -1716,7 +1713,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
17161713
name: "machine with min highest priority pod is picked",
17171714
registerPlugins: []st.RegisterPluginFunc{
17181715
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1719-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1716+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
17201717
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
17211718
},
17221719
nodes: []string{"machine1", "machine2", "machine3"},
@@ -1737,7 +1734,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
17371734
name: "when highest priorities are the same, minimum sum of priorities is picked",
17381735
registerPlugins: []st.RegisterPluginFunc{
17391736
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1740-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1737+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
17411738
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
17421739
},
17431740
nodes: []string{"machine1", "machine2", "machine3"},
@@ -1758,7 +1755,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
17581755
name: "when highest priority and sum are the same, minimum number of pods is picked",
17591756
registerPlugins: []st.RegisterPluginFunc{
17601757
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1761-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1758+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
17621759
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
17631760
},
17641761
nodes: []string{"machine1", "machine2", "machine3"},
@@ -1784,7 +1781,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
17841781
name: "sum of adjusted priorities is considered",
17851782
registerPlugins: []st.RegisterPluginFunc{
17861783
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1787-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1784+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
17881785
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
17891786
},
17901787
nodes: []string{"machine1", "machine2", "machine3"},
@@ -1807,7 +1804,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
18071804
name: "non-overlapping lowest high priority, sum priorities, and number of pods",
18081805
registerPlugins: []st.RegisterPluginFunc{
18091806
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1810-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1807+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
18111808
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
18121809
},
18131810
nodes: []string{"machine1", "machine2", "machine3", "machine4"},
@@ -1835,7 +1832,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
18351832
name: "same priority, same number of victims, different start time for each machine's pod",
18361833
registerPlugins: []st.RegisterPluginFunc{
18371834
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1838-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1835+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
18391836
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
18401837
},
18411838
nodes: []string{"machine1", "machine2", "machine3"},
@@ -1856,7 +1853,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
18561853
name: "same priority, same number of victims, different start time for all pods",
18571854
registerPlugins: []st.RegisterPluginFunc{
18581855
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1859-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1856+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
18601857
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
18611858
},
18621859
nodes: []string{"machine1", "machine2", "machine3"},
@@ -1877,7 +1874,7 @@ func TestPickOneNodeForPreemption(t *testing.T) {
18771874
name: "different priority, same number of victims, different start time for all pods",
18781875
registerPlugins: []st.RegisterPluginFunc{
18791876
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
1880-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
1877+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
18811878
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
18821879
},
18831880
nodes: []string{"machine1", "machine2", "machine3"},
@@ -2096,7 +2093,7 @@ func TestPreempt(t *testing.T) {
20962093
},
20972094
registerPlugins: []st.RegisterPluginFunc{
20982095
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
2099-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
2096+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
21002097
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
21012098
},
21022099
expectedNode: "machine1",
@@ -2117,7 +2114,7 @@ func TestPreempt(t *testing.T) {
21172114
},
21182115
registerPlugins: []st.RegisterPluginFunc{
21192116
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
2120-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
2117+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
21212118
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
21222119
},
21232120
expectedNode: "machine3",
@@ -2199,7 +2196,6 @@ func TestPreempt(t *testing.T) {
21992196
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
22002197
st.RegisterPluginAsExtensions(
22012198
podtopologyspread.Name,
2202-
1,
22032199
podtopologyspread.New,
22042200
"PreFilter",
22052201
"Filter",
@@ -2232,7 +2228,7 @@ func TestPreempt(t *testing.T) {
22322228
},
22332229
registerPlugins: []st.RegisterPluginFunc{
22342230
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
2235-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
2231+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
22362232
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
22372233
},
22382234
expectedNode: "machine1",
@@ -2258,7 +2254,7 @@ func TestPreempt(t *testing.T) {
22582254
},
22592255
registerPlugins: []st.RegisterPluginFunc{
22602256
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
2261-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
2257+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
22622258
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
22632259
},
22642260
expectedNode: "",
@@ -2288,7 +2284,7 @@ func TestPreempt(t *testing.T) {
22882284
},
22892285
registerPlugins: []st.RegisterPluginFunc{
22902286
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
2291-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
2287+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
22922288
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
22932289
},
22942290
expectedNode: "machine1",
@@ -2318,7 +2314,7 @@ func TestPreempt(t *testing.T) {
23182314
},
23192315
registerPlugins: []st.RegisterPluginFunc{
23202316
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
2321-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
2317+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
23222318
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
23232319
},
23242320
expectedNode: "machine3",
@@ -2339,7 +2335,7 @@ func TestPreempt(t *testing.T) {
23392335
},
23402336
registerPlugins: []st.RegisterPluginFunc{
23412337
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
2342-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
2338+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
23432339
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
23442340
},
23452341
expectedNode: "",
@@ -2360,7 +2356,7 @@ func TestPreempt(t *testing.T) {
23602356
},
23612357
registerPlugins: []st.RegisterPluginFunc{
23622358
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
2363-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
2359+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
23642360
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
23652361
},
23662362
expectedNode: "machine1",

pkg/scheduler/scheduler_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,7 @@ func TestSchedulerNoPhantomPodAfterExpire(t *testing.T) {
356356
fns := []st.RegisterPluginFunc{
357357
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
358358
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
359-
st.RegisterPluginAsExtensions(nodeports.Name, 1, nodeports.New, "Filter", "PreFilter"),
359+
st.RegisterPluginAsExtensions(nodeports.Name, nodeports.New, "Filter", "PreFilter"),
360360
}
361361
scheduler, bindingChan, _ := setupTestSchedulerWithOnePodOnNode(t, queuedPodStore, scache, informerFactory, stop, pod, &node, fns...)
362362

@@ -423,7 +423,7 @@ func TestSchedulerNoPhantomPodAfterDelete(t *testing.T) {
423423
fns := []st.RegisterPluginFunc{
424424
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
425425
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
426-
st.RegisterPluginAsExtensions(nodeports.Name, 1, nodeports.New, "Filter", "PreFilter"),
426+
st.RegisterPluginAsExtensions(nodeports.Name, nodeports.New, "Filter", "PreFilter"),
427427
}
428428
scheduler, bindingChan, errChan := setupTestSchedulerWithOnePodOnNode(t, queuedPodStore, scache, informerFactory, stop, firstPod, &node, fns...)
429429

@@ -569,7 +569,7 @@ func TestSchedulerFailedSchedulingReasons(t *testing.T) {
569569
fns := []st.RegisterPluginFunc{
570570
st.RegisterQueueSortPlugin(queuesort.Name, queuesort.New),
571571
st.RegisterBindPlugin(defaultbinder.Name, defaultbinder.New),
572-
st.RegisterPluginAsExtensions(noderesources.FitName, 1, noderesources.NewFit, "Filter", "PreFilter"),
572+
st.RegisterPluginAsExtensions(noderesources.FitName, noderesources.NewFit, "Filter", "PreFilter"),
573573
}
574574
scheduler, _, errChan := setupTestScheduler(queuedPodStore, scache, informerFactory, nil, nil, fns...)
575575

0 commit comments

Comments
 (0)