Commit Graph

726 Commits

Author SHA1 Message Date
unvavo
2c254d3b25 add integration test for tainttoleration in requeueing scenarios 2024-10-12 15:23:55 +09:00
Kubernetes Prow Robot
9ffc095f88 Merge pull request #127892 from utam0k/test-qhint-volume-restriction
Add integration test for VolumeRestriction in requeueing scenarios
2024-10-11 07:32:20 +01:00
Kubernetes Prow Robot
95612e7b3b Merge pull request #127878 from AxeZhan/sidecar
[scheduler] calculate pod requests resources with sidecar containers
2024-10-10 17:54:19 +01:00
AxeZhan
8b15843d00 remove unused GetNonzeroRequests function 2024-10-10 23:52:25 +08:00
AxeZhan
b1f07bb36c add tests for scheduler 2024-10-10 15:53:19 +08:00
utam0k
60c29c380d Add integration test for VolumeRestriction in requeueing scenarios
Signed-off-by: utam0k <k0ma@utam0k.jp>
2024-10-10 08:31:29 +09:00
Kensei Nakada
a2b3a4f4dc chore: ensure the scheduler handles events before checking the pod position 2024-10-06 21:06:45 +09:00
Kubernetes Prow Robot
7dd03c1ee5 Merge pull request #127353 from Gekko0114/integration_test_volumezone
Add integration test for VolumeZone in requeueing scenarios
2024-10-03 05:48:26 +01:00
moriya
3e57d5cf67 fix 2024-10-02 06:54:32 +09:00
dom4ha
9bf6ee976b Assert whethere there are no pod in active queue while waiting for all pods to get scheduled instead of asserting it afterwards. 2024-09-27 15:06:04 +00:00
dom4ha
54b0ed45b7 Add one more check to the test case precondition assessment. 2024-09-27 15:06:04 +00:00
dom4ha
151ac846a2 Increase the readability of the test preconditions and double check that all test pods are really unschedulable. 2024-09-27 15:06:04 +00:00
Kubernetes Prow Robot
960e3984b0 Merge pull request #127444 from dom4ha/fine-grained-qhints
Fine grain QueueHints for NodeAffinity plugin
2024-09-27 01:42:00 +01:00
dom4ha
c7db4bb450 Fine grain QueueHints for nodeaffinity plugin.
Skip queue on unrelated change that keeps pod schedulable when QueueHints are enabled.

Split add from QHints disabled case

Remove case when QHints are disabled

Remove two GHint alternatives in unit tests

more fine-grained Node QHint for NodeResourceFit plugin

Return early when updated Node causes unmatch

Revert "more fine-grained Node QHint for NodeResourceFit plugin"

This reverts commit dfbceb60e0c1c4e47748c12722d9ed6dba1a8366.

Add integration test for requeue of a pod previously rejected by NodeAffinity plugin when a suitable Node is added

Add integratin test for a Node update operation that does not trigger requeue in NodeAffinity plugin

Remove innacurrate comment

Apply review comments
2024-09-26 10:21:08 +00:00
dom4ha
903b1f7e28 more fine-grained Node QHint for NodeResourceFit plugin 2024-09-26 09:51:36 +00:00
Kubernetes Prow Robot
75214d11d5 Merge pull request #127428 from googs1025/scheduler/plugin
chore(scheduler): refactor import package ordering in scheduler
2024-09-25 11:40:07 +01:00
moriya
cd0e0fc881 add_test 2024-09-23 21:49:09 +09:00
moriya
090145aadf add_non_queued_pod 2024-09-23 21:24:09 +09:00
Kensei Nakada
421f87a4e3 feat: add a requeueing integration test for PodTopologySpread with Node/delete event (QHint: disabled) 2024-09-23 00:29:56 +09:00
Kensei Nakada
bf8f7a3ad7 feat: add a requeueing integration test for PodTopologySpread with Node/delete event 2024-09-22 17:34:37 +09:00
moriya
d5e9199229 add test-cases 2024-09-21 14:06:52 +09:00
moriya
7b8985dc03 add_test_cases 2024-09-21 01:09:10 +09:00
moriya
75266db65b Add integration test for VolumeZone in requeueing scenarios 2024-09-20 23:05:35 +09:00
Kubernetes Prow Robot
f0415a65b4 Merge pull request #127406 from toshikish/add-integration-test-for-nodeunschedulable
Add integration test for NodeUnschedulable in requeueing scenarios
2024-09-19 09:02:51 +01:00
Kubernetes Prow Robot
41b7ca240e Merge pull request #127354 from unvavo/add-test-noderesourcesfit-for-queueinghint
Add integration test for NodeResourcesFit in requeueing scenarios
2024-09-19 09:02:45 +01:00
toshikish
aeafb4d149 Add integration test for NodeUnschedulable in requeueing scenarios 2024-09-19 14:54:32 +09:00
yusuke.sakurai
b8bd6ebcce add integration test for podtopologyspread in requeueing scenarios 2024-09-19 12:27:31 +09:00
unvavo
cf3aa04ed1 add integration test for noderesourcesfit in requeueing scenarios 2024-09-19 00:01:23 +09:00
googs1025
69831b0043 chore(scheduler): refactor import package ordering 2024-09-18 20:31:03 +08:00
Kensei Nakada
24a14aa810 fix: run a test for requeueing with PreFilterResult correctly 2024-09-07 23:52:45 +09:00
yusuke.sakurai
27a8ef8c52 add integration test for nodeports in requeueing scenarios 2024-09-06 13:07:54 +09:00
Kubernetes Prow Robot
e6f7b35cc4 Merge pull request #127139 from tozastation/add-test-nodeaffinity-for-queueinghint
add: integration test for NodeAffinity plugin in requeueing scenarios
2024-09-05 16:04:45 +01:00
tozastation
0c9828e7f0 add: integration test for NodeAffinity plugin
Signed-off-by: tozastation <tozastation@gmail.com>
2024-09-05 18:33:23 +09:00
nayihz
ffe6f0867a add integration test for interpodaffinity in requeueing scenarios 2024-09-05 14:55:31 +08:00
Kubernetes Prow Robot
6cf49df138 Merge pull request #126158 from macsko/use_generics_in_scheduling_queue_heap
Use generics in scheduling queue's heap
2024-08-13 21:03:02 -07:00
Kubernetes Prow Robot
ea1143efc7 Merge pull request #126022 from macsko/new_node_to_status_map_structure
Change structure of NodeToStatus map in scheduler
2024-08-13 21:02:55 -07:00
Maciej Skoczeń
98be7dfc5d Change structure of NodeToStatus map in scheduler 2024-07-25 07:48:35 +00:00
Maciej Skoczeń
6b33e2e632 Use generics in scheduling queue's heap 2024-07-24 06:55:47 +00:00
Patrick Ohly
9f36c8d718 DRA: add DRAControlPlaneController feature gate for "classic DRA"
In the API, the effect of the feature gate is that alpha fields get dropped on
create. They get preserved during updates if already set. The
PodSchedulingContext registration is *not* restricted by the feature gate.
This enables deleting stale PodSchedulingContext objects after disabling
the feature gate.

The scheduler checks the new feature gate before setting up an informer for
PodSchedulingContext objects and when deciding whether it can schedule a
pod. If any claim depends on a control plane controller, the scheduler bails
out, leading to:

    Status:       Pending
    ...
      Warning  FailedScheduling             73s   default-scheduler  0/1 nodes are available: resourceclaim depends on disabled DRAControlPlaneController feature. no new claims to deallocate, preemption: 0/1 nodes are available: 1 Preemption is not helpful for scheduling.

The rest of the changes prepare for testing the new feature separately from
"structured parameters". The goal is to have base "dra" jobs which just enable
and test those, then "classic-dra" jobs which add DRAControlPlaneController.
2024-07-22 18:09:34 +02:00
Patrick Ohly
599fe605f9 DRA scheduler: adapt to v1alpha3 API
The structured parameter allocation logic was written from scratch in
staging/src/k8s.io/dynamic-resource-allocation/structured where it might be
useful for out-of-tree components.

Besides the new features (amount, admin access) and API it now supports
backtracking when the initial device selection doesn't lead to a complete
allocation of all claims.

Co-authored-by: Ed Bartosh <eduard.bartosh@intel.com>
Co-authored-by: John Belamaric <jbelamaric@google.com>
2024-07-22 18:09:34 +02:00
Patrick Ohly
b51d68bb87 DRA: bump API v1alpha2 -> v1alpha3
This is in preparation for revamping the resource.k8s.io completely. Because
there will be no support for transitioning from v1alpha2 to v1alpha3, the
roundtrip test data for that API in 1.29 and 1.30 gets removed.

Repeating the version in the import name of the API packages is not really
required. It was done for a while to support simpler grepping for usage of
alpha APIs, but there are better ways for that now. So during this transition,
"resourceapi" gets used instead of "resourcev1alpha3" and the version gets
dropped from informer and lister imports. The advantage is that the next bump
to v1beta1 will affect fewer source code lines.

Only source code where the version really matters (like API registration)
retains the versioned import.
2024-07-21 17:28:13 +02:00
googs1025
a3978e8315 scheduler: Add ctx param and error return to EnqueueExtensions.EventsToRegister() 2024-07-18 12:22:17 +08:00
Kubernetes Prow Robot
20b216738a Merge pull request #125971 from googs1025/integration_test
chore: use testCtx instead of context.TODO() for scheduler integration
2024-07-09 18:57:06 -07:00
Kubernetes Prow Robot
4a214f6ad9 Merge pull request #125461 from mimowo/pod-disruption-conditions-ga
Graduate PodDisruptionConditions to stable
2024-07-09 11:08:13 -07:00
googs1025
15cc77603e chore: use testCtx instead of context.TODO() 2024-07-09 16:20:03 +08:00
Kensei Nakada
533140f065 take PodTopologySpread into consideration when requeueing Pods based on Pod related events 2024-07-06 13:17:14 +00:00
Kubernetes Prow Robot
b6899c5e08 Merge pull request #122251 from olderTaoist/unschedulable-plugin
register unschedulable plugin  for those plugins that PreFilter's PreFilterResult filter out some nodes
2024-07-05 05:44:26 -07:00
olderTaoist
b478621596 register unscheduable plugin when prefileter with NodeNames 2024-07-02 13:02:45 +08:00
Kubernetes Prow Robot
ac9aec9f9b Merge pull request #125116 from pohly/dra-one-of-source
DRA: remove "source" indirection from v1 Pod API
2024-06-28 12:46:45 -07:00
Michal Wozniak
bf0c9885a4 Graduate PodDisruptionConditions to stable 2024-06-28 16:36:51 +02:00