1
0
mirror of https://github.com/kubernetes-sigs/descheduler.git synced 2026-01-26 21:31:18 +01:00
Commit Graph

69 Commits

Author SHA1 Message Date
Jan Chaloupka
7cec27d467 refactor(TestPodAntiAffinity): inline nonEvictablePod 2025-12-15 13:56:37 +01:00
Jan Chaloupka
688b45011a refactor(TestPodAntiAffinity): inline p11 2025-12-15 13:56:07 +01:00
Jan Chaloupka
a96451030c refactor(TestPodAntiAffinity): inline p10 2025-12-15 13:55:36 +01:00
Jan Chaloupka
a4930ebc83 refactor(TestPodAntiAffinity): inline p9 2025-12-15 13:55:11 +01:00
Jan Chaloupka
ad872f8b77 refactor(TestPodAntiAffinity): inline p8 2025-12-15 13:54:40 +01:00
Jan Chaloupka
a0654df270 refactor(TestPodAntiAffinity): inline p7 2025-12-15 13:54:07 +01:00
Jan Chaloupka
03b5a9a967 refactor(TestPodAntiAffinity): inline p6 2025-12-15 13:53:43 +01:00
Jan Chaloupka
9f2d22c1f7 refactor(TestPodAntiAffinity): inline p5 2025-12-15 13:53:19 +01:00
Jan Chaloupka
cbe1c1e559 refactor(TestPodAntiAffinity): inline p4 2025-12-15 13:52:21 +01:00
Jan Chaloupka
87182c5e8f refactor(TestPodAntiAffinity): inline p3 2025-12-15 13:51:58 +01:00
Jan Chaloupka
2765e31048 refactor(TestPodAntiAffinity): inline p2 2025-12-15 13:51:00 +01:00
Jan Chaloupka
87f675a2cd refactor(TestPodAntiAffinity): inline p1 2025-12-15 13:48:01 +01:00
Jan Chaloupka
a400a66d51 refactor(TestPodAntiAffinity): create dedicated builders for p1-p4 and nonEvictablePod 2025-12-15 13:43:11 +01:00
Jan Chaloupka
fa427a2b37 refactor(TestPodAntiAffinity): deduplicate setting Labels for foo1-bar1 2025-12-15 13:38:58 +01:00
Jan Chaloupka
90672630da refactor(TestPodAntiAffinity): deduplicate setting Labels for foo-bar 2025-12-15 13:37:55 +01:00
Jan Chaloupka
6a00214457 refactor(TestPodAntiAffinity): deduplicate setPodAntiAffinity for foo1-bar1 2025-12-15 13:36:27 +01:00
Jan Chaloupka
9413b0c654 refactor(TestPodAntiAffinity): deduplicate setPodAntiAffinity for foo-bar 2025-12-15 13:34:05 +01:00
Jan Chaloupka
3072a59ea0 refactor(TestPodAntiAffinity): ensure nonEvictablePod is created only through apply argument 2025-12-15 13:25:04 +01:00
Jan Chaloupka
0e56823865 refactor(TestPodAntiAffinity): ensure p11 is created only through apply argument 2025-12-15 13:24:09 +01:00
Jan Chaloupka
ea80f7d307 refactor(TestPodAntiAffinity): ensure p10 is created only through apply argument 2025-12-15 13:23:46 +01:00
Jan Chaloupka
6638b976ad refactor(TestPodAntiAffinity): ensure p9 is created only through apply argument 2025-12-15 13:23:10 +01:00
Jan Chaloupka
116385718f refactor(TestPodAntiAffinity): ensure p8 is created only through apply argument 2025-12-15 13:22:35 +01:00
Jan Chaloupka
5ad695166a refactor(TestPodAntiAffinity): ensure p7 is created only through apply argument 2025-12-15 13:22:12 +01:00
Jan Chaloupka
d5e0ec597f refactor(TestPodAntiAffinity): ensure p6 is created only through apply argument 2025-12-15 13:21:32 +01:00
Jan Chaloupka
4b86cdd31a refactor(TestPodAntiAffinity): ensure p5 is created only through apply argument 2025-12-15 13:20:53 +01:00
Jan Chaloupka
99527292e0 refactor(TestPodAntiAffinity): ensure p4 is created only through apply argument 2025-12-15 13:20:06 +01:00
Jan Chaloupka
cf79af6fba refactor(TestPodAntiAffinity): ensure p3 is created only through apply argument 2025-12-15 13:19:38 +01:00
Jan Chaloupka
da55c779f2 refactor(TestPodAntiAffinity): ensure p2 is created only through apply argument 2025-12-15 13:18:50 +01:00
Jan Chaloupka
c5b9debe56 refactor(TestPodAntiAffinity): ensure p1 is created only through apply argument 2025-12-15 12:57:19 +01:00
Jan Chaloupka
18f847bbe8 refactor(TestPodAntiAffinity): create buildTestPodForNode1 to deduplicate nodeName1 2025-12-15 12:54:42 +01:00
Jan Chaloupka
6e753ac5fb refactor(TestPodAntiAffinity): create buildTestPod helper to deduplicate 100 and 0 literals 2025-12-15 12:52:02 +01:00
Jan Chaloupka
b797ca6ba2 refactor(TestPodAntiAffinity): inline node2, node3, node4, and node5 2025-12-15 12:48:50 +01:00
Jan Chaloupka
4ffabad669 refactor(TestPodAntiAffinity): create buildTestNode1 and inline node1 2025-12-15 12:45:07 +01:00
Jan Chaloupka
bba62ccb93 refactor(TestPodAntiAffinity): extract setNodeMainRegionLabel helper 2025-12-15 12:40:46 +01:00
Jan Chaloupka
1f856595f5 refactor(TestPodAntiAffinity): add nodeName constants
refactor(TestPodAntiAffinity): replace node.Name with nodeName constants
2025-12-15 12:36:23 +01:00
Jan Chaloupka
993162dd44 refactor(TestPodAntiAffinity): replace test.BuildTestNode with buildTestNode helper 2025-12-15 12:30:30 +01:00
Amir Alavi
1db6b615d1 [v0.34.0] bump to kubernetes 1.34 deps
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2025-10-21 09:14:13 -04:00
googs1025
2cce141feb Improves the validation logic in the plugins
Signed-off-by: googs1025 <googs1025@gmail.com>
2025-08-07 17:21:01 +08:00
googs1025
33894afe2b feature: use contextal logging for plugins
Signed-off-by: googs1025 <googs1025@gmail.com>
2025-06-13 19:45:55 +08:00
Jan Chaloupka
1974c12e0f Extend plugin's New with a context.Context
The new context.Context can be later used for passing a contextualized
logger. Or, other initialization steps that require the context.
2025-05-19 12:23:44 +02:00
Amir Alavi
48aede9fde update license to year 2025
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2025-01-02 13:36:59 -05:00
Kubernetes Prow Robot
0f1890e5cd Merge pull request #1480 from ingvagabund/omitempty-for-plugin-args
Plugin args: tag arguments with omitempty to reduce the marshalled json size
2024-09-02 12:00:56 +01:00
Jan Chaloupka
cbade38d23 [tests] de-duplicate framework handle initialization 2024-08-12 17:05:30 +02:00
Jan Chaloupka
cb0c1b660d Plugin args: tag arguments with omitempty to reduce the marshalled json size 2024-08-06 15:20:18 +02:00
zhifei92
e60f525ec6 feat: support MaxNoOfPodsToEvictTotal 2024-07-09 14:00:27 +08:00
Jan Chaloupka
18d0e4a540 PodEvictor: turn an exceeded limit into an error
When checking for node limit getting exceeded the pod eviction
never fails. Thus, ignoring the metric reporting when a pod fails
to be evicted due to node limit constrains.

The error also allows plugin to react on other limits getting
exceeded. E.g. the limit on the number of pods evicted per namespace.
2024-07-06 20:14:43 +02:00
Amir Alavi
e26f6429a2 feat: pod evictor options 2024-07-05 21:40:55 -04:00
Jan Chaloupka
0901cb18bf NewPodEvictor: drop nodes parameter 2024-06-22 15:08:00 +02:00
googs1025
0e2478ac41 add validation ut 2024-06-13 11:56:33 +08:00
Niki Manoledaki
749e81c51c Check whether pod matches the inter-pod anti-affinity of another Pod in a given Node in NodeFit() (#1356)
* Check if Pod matches inter-pod anti-affinity of other pod on node as part of NodeFit()

* Add unit tests for checking inter-pod anti-affinity match in NodeFit()
* Export setPodAntiAffinity() helper func to test utils

* Add docs for inter-pod anti-affinity in README

* Refactor logic for inter-pod anti-affinity to use in multiple pkgs
* Move logic for finding match between pods with antiaffinity out of framework to reuse in other pkgs
* Move interpod antiaffinity funcs to pkg/utils/predicates.go

* Add unit tests for inter-pod anti-affinity check
* Test logic in GroupByNodeName
* Test NodeFit() case where pods matches inter-pod anti-affinity
* Test for inter-pod anti-affinity pods  match terms, have label selector

* NodeFit inter-pod anti-affinity check returns early if affinity spec not set
2024-03-12 19:50:03 -07:00