Commit Graph

136512 Commits

Author SHA1 Message Date
Morten Torkildsen
bae488e3a5 DRA: Promote DRAPartitionableDevices to beta 2026-03-13 15:50:30 +00:00
Kubernetes Prow Robot
2fd6c47656 Merge pull request #137706 from scaliby/extract-resource-under-describe
Extract resource under describe to a separate variable
2026-03-13 21:09:43 +05:30
Kubernetes Prow Robot
eeb690e1f3 Merge pull request #137597 from pohly/dra-extended-resource-version-skew
DRA: re-enable extended resource tests for version skew testing
2026-03-13 21:09:36 +05:30
Kubernetes Prow Robot
18dd17f7ce Merge pull request #137709 from tosi3k/refactor-priority-admission-plugin
Refactor Priority admission plugin
2026-03-13 20:15:46 +05:30
Kubernetes Prow Robot
7f3a5ab96f Merge pull request #136579 from romanbaron/reuse-scheduling-signature
Reuse pod scheduling signature for opportunistic batching
2026-03-13 20:15:39 +05:30
Kubernetes Prow Robot
0bf52890c5 Merge pull request #137555 from natasha41575/allow_nri_to_block_resize
[InPlacePodVerticalScaling] Allow CRI (and NRI) to block pod-level resizes
2026-03-13 17:23:50 +05:30
Kubernetes Prow Robot
2bd6c7fe3c Merge pull request #137298 from dims/dsri/cri-streaming-option-a-hardcut
cri streaming option a hardcut - add new staging repositories `streaming` and `cri-streaming`
2026-03-13 17:23:36 +05:30
Antoni Zawodny
6511deadd8 Refactor Priority admission plugin 2026-03-13 12:21:37 +01:00
Kubernetes Prow Robot
3bbe373189 Merge pull request #137704 from pohly/dra-device-taints-only-beta-enabled
DRA device taints: fix beta-enabled, alpha-disable configurations
2026-03-13 15:07:35 +05:30
Konrad Kaim
93755d411b feat: extract resource under describe to a separate variable 2026-03-13 09:03:33 +00:00
Patrick Ohly
ee51070eba DRA: re-enable extended resource tests for version skew testing
Limiting the tests to kubelet >= 1.36 was a stop-gap solution because the
version skew tests had to be updated to enable the feature on kubelet >= 1.34
first.

Some tests depend on a bug fix in 1.35 for implicit extended resource.
2026-03-13 09:54:42 +01:00
Patrick Ohly
85bca3b684 DRA device taints: fix beta-enabled, alpha-disable configurations
DeviceTaintRule is off by default because the corresponding v1beta2 API group
is off. When enabled, the potentially still disabled v1alpha3 API version was
used instead of the new v1beta2, causing the scheduler to fail while setting up
informers and then not scheduling pods.
2026-03-13 09:20:57 +01:00
Kubernetes Prow Robot
e3c5ead23f Merge pull request #137676 from ndixita/allocated-resources-cleanup
Add test coverage to ensure that when PLR are checkpointed overhead is excluded from it
2026-03-13 10:33:41 +05:30
Kubernetes Prow Robot
49a1007ff2 Merge pull request #137566 from yangjunmyfm192085/fixgetpods
Improve stability by sorting containers by create time and ID in kubeGenericRuntimeManager.GetPods() and GetPod()
2026-03-13 10:33:34 +05:30
Kubernetes Prow Robot
4221620945 Merge pull request #137470 from brianpursley/fix-wait-panic
Check condition cast to avoid potential panic in kubectl wait
2026-03-13 06:15:48 +05:30
Kubernetes Prow Robot
eb15e2767f Merge pull request #137362 from tallclair/on-demand-relist
On-demand per-pod PLEG Relist
2026-03-13 06:15:40 +05:30
Kubernetes Prow Robot
21305568b0 Merge pull request #137083 from brejman/generate-plugin
Add placement generator plugin interfaces and logic for running them
2026-03-13 06:15:33 +05:30
Kubernetes Prow Robot
8cca7a629e Merge pull request #137679 from jpbetz/fix-and-test-wiping-reset-consistency
Fix and test wiping reset consistency
2026-03-13 05:15:34 +05:30
Kubernetes Prow Robot
d73c1818e9 Merge pull request #132620 from tchap/kcm-clean-termination
kube-controller-manager: Refactor leader election management to prepare for releasing lock on exit
2026-03-13 03:49:38 +05:30
Joe Betz
a5a0327d6d Fix test reset fields of servicecidr 2026-03-12 17:43:36 -04:00
Joe Betz
a073972cad Add test to ensure reset fields is applied consistently 2026-03-12 17:43:04 -04:00
Kubernetes Prow Robot
4730b179bd Merge pull request #137321 from nojnhuh/resourceclaimname-status-validation
Fix path in Pod status resourceClaimName validation
2026-03-13 02:57:35 +05:30
Natasha Sarkar
7dee4a262f allow nri plugins to block pod-level resizes 2026-03-12 20:43:02 +00:00
Kubernetes Prow Robot
50e7571f48 Merge pull request #137669 from tallclair/push-vzwskkoluxyu
plugin/pkg/admission/nodedeclaredfeatures OWNERS
2026-03-13 02:03:44 +05:30
Kubernetes Prow Robot
8ebee69b15 Merge pull request #137398 from Rajneesh180/fix-client-go-nil-event-key-v4
client-go: fix goroutine hot-loop in StartEventWatcher on broadcaster shutdown
2026-03-13 02:03:36 +05:30
ndixita
27b99fe2ae Add test coverage to ensure that when PLR are checkpointed, overhead is excluded from it. And when mapping allocated resources back from the checkpoint to pod spec the values have resources excluding the overhead 2026-03-12 20:06:58 +00:00
Roman Baron
6fcb95e72e scheduler: Moved TestQueuedPodInfo_UpdateInvalidatesSignature from queue/scheduling_queue_test.go to framework/types_test.go 2026-03-12 21:24:23 +02:00
Roman Baron
1e0545b1fa scheduler: Removed TestPriorityQueue_SignatureReuse 2026-03-12 20:52:51 +02:00
Kubernetes Prow Robot
4e2bbc78bf Merge pull request #137170 from pohly/dra-device-taints-beta
DRA device taints: graduate to beta
2026-03-13 00:13:38 +05:30
Roman Baron
e436c1c812 scheduler: Added a test that validates that adding pod to a queue calculates pod signature and added more cases when pod is updated. Specifically when pod is in backoffQ and unschedulablePods or does not exist in any queue 2026-03-12 20:43:14 +02:00
Tim Allclair
0b0b77ae20 Request on-demand relist when performing sync changes 2026-03-12 18:24:03 +00:00
Patrick Ohly
ad60a2d291 DRA device taints: update integration tests
The tests starting the eviction controller shouldn't run in parallel because we
want the one controller instance to be up-to-date with its informer caches when
it sees the new DeviceTaintRule. Worst case, a controller from one test would
have set the status of the DeviceTaintRule created by another.

That's not quite what happened here though:

        Value for field 'Status.Conditions' failed to satisfy matcher.
        Expected
            <[]v1.Condition | len:1, cap:1>:
                - lastTransitionTime: "2026-03-06T14:41:10Z"
                  message: 1000 published devices selected. 1001 allocated devices selected. 1000
                    pods would be evicted in 1 namespace if the effect was NoExecute. This information
                    will not be updated again. Recreate the DeviceTaintRule to trigger an update.
                  observedGeneration: 1
                  reason: NoEffect
                  status: "False"
                  type: EvictionInProgress

Note the "1001 allocated devices selected": the test only creates 1000
devices. It's not entirely clear where the extra one came from.

The test got stuck in the Eventually, which is useless because we know that
controller is not going to update the condition again. So now we wait for the
ObservedGeneration to increase, then check the full condition content once.
2026-03-12 18:26:03 +01:00
Patrick Ohly
7d2781a0c3 DRA device taints: generated files 2026-03-12 18:26:03 +01:00
Patrick Ohly
566dc7f3f3 DRA device taints: graduate to beta
The fields become beta, enabled by default. DeviceTaintRule gets
added to the v1beta2 API, but support for it must remain off by default
because that API group is also off by default.

The v1beta1 API is left unchanged. No-one should be using it
anymore (deprecated in 1.33, could be removed now if it wasn't for
reading old objects and version emulation).

To achieve consistent validation, declarative validation must be enabled also
for v1alpha3 (was already enabled for other versions). Otherwise,
TestVersionedValidationByFuzzing fails:

    --- FAIL: TestVersionedValidationByFuzzing (0.09s)
        --- FAIL: TestVersionedValidationByFuzzing/resource.k8s.io/v1beta2,_Kind=DeviceTaintRule (0.00s)
            validation_test.go:109: different error count (0 vs. 1)
                resource.k8s.io/v1alpha3: <no errors>
                resource.k8s.io/v1beta2: "spec.taint.effect: Unsupported value: \"幤HxÒQP¹¬永唂ȳ垞ş]嘨鶊\": supported values: \"NoExecute\", \"NoSchedule\", \"None\""
            ...
2026-03-12 18:26:02 +01:00
Kubernetes Prow Robot
03e8d88396 Merge pull request #137634 from Jefftree/agg-discovery-flake
Fix aggregated discovery retry on fetch failure
2026-03-12 22:49:48 +05:30
Peter Engelbert
b4220f8b08 Add credential pluginkubectl kuberc set options (#137300)
* Add <...> kuberc set --section=credentialplugin

The requirement that the `--command` option be provided is no longer
valid; a solution will need to be found.

Signed-off-by: Peter Engelbert <pmengelbert@gmail.com>

* Remove required mark on `--command` flag

Move the validation logic to the Validate() function

Signed-off-by: Peter Engelbert <pmengelbert@gmail.com>

* Remove requirement for `--command`

Signed-off-by: Peter Engelbert <pmengelbert@gmail.com>

* Add cmd test cases for kuberc

- Verify all error messages added/changed by this PR
- Verify changes are effected by at least one valid `kubectl kuberc
  set` invocation with --section=credentialplugin

Signed-off-by: Peter Engelbert <pmengelbert@gmail.com>

* Add unit tests for --section=credentialplugin

Additionally:
- Update allowlist-entry validation logic to check for empty string in
  value of k/v pairs
- Update kuberc cmd test with this case as well

Signed-off-by: Peter Engelbert <pmengelbert@gmail.com>

* Address linter complaints

Signed-off-by: Peter Engelbert <pmengelbert@gmail.com>

* Update staging/src/k8s.io/kubectl/pkg/cmd/kuberc/set.go

Co-authored-by: Maciej Szulik <soltysh@gmail.com>

* Add two new test cases

Additionally:
- update error message when policy is invalid
- use utilerrors.NewAggregate instead of custom code
- add --section=credentialplugin example to cli help
- fix copypasted doc comments
- use more descriptive variable names in for loops
- avoid confusion due to variable shadowing
- fix capitalization typo
- check both validate and run errors in credentialplugin tests

Signed-off-by: Peter Engelbert <pmengelbert@gmail.com>

* Improve cli help for policy flag

Signed-off-by: Peter Engelbert <pmengelbert@gmail.com>

---------

Signed-off-by: Peter Engelbert <pmengelbert@gmail.com>
Co-authored-by: Maciej Szulik <soltysh@gmail.com>
2026-03-12 22:49:41 +05:30
Tim Allclair
162be9e8ea plugin/pkg/admission/nodedeclaredfeatures OWNERS 2026-03-12 16:51:03 +00:00
Kubernetes Prow Robot
f7f694e5e0 Merge pull request #136792 from rata/userns-goes-ga
feature: Migrate UserNamespacesSupport to GA
2026-03-12 21:57:36 +05:30
Davanum Srinivas
b3c1418312 staging/publishing: order streaming before dependents
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2026-03-12 11:59:15 -04:00
Kubernetes Prow Robot
664419792d Merge pull request #137301 from Jefftree/openapi-filter-cross-registered-gvks
scope x-kubernetes-group-version-kind to local API group in v3 specs
2026-03-12 21:03:45 +05:30
Kubernetes Prow Robot
a7cbc9054b Merge pull request #137145 from mark-liu/kubectl/describe-events-cardinality
Skip events for multi-object kubectl describe
2026-03-12 21:03:36 +05:30
Roman Baron
c0e973dc70 scheduler: Replaced context.Context and testing.T parameters with ktesting.TContext in scheduling_queue_test.go 2026-03-12 17:31:11 +02:00
Ondra Kupka
8ddefcf4b3 kcm: Prepare leader election for release on exit
Refactor KCM so that it's ready to turn on releasing leader election
exit easily.
2026-03-12 16:27:35 +01:00
Roman Baron
c03033619c Update pkg/scheduler/metrics/metric_recorder.go
Co-authored-by: Maciej Skoczeń <87243939+macsko@users.noreply.github.com>
2026-03-12 16:42:25 +02:00
Rodrigo Campos
b0e3817299 test: Document UserNamespacesSupport e2e feature
This test framework feature is used in the test-infra that runs with
container runtimes that have support for user namespaces.

Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-03-12 15:20:09 +01:00
Rodrigo Campos
8db51091e8 Remove references to UserNamespacesSupport feature gate from core types
It's GA now. To regenerate the files I did:
        make WHAT=cmd/kube-apiserver
        make update

While we are there, remove the reference that the field is alpha.

Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-03-12 15:20:09 +01:00
Rodrigo Campos
8d0f80e4ed staging/testdata: Remove UserNamespacesSupport reference
This is just a sed to remove the old data from the text fixtures too.

While two files are clearly test data given that they include testdata
in their name, these two is not so obvious but are also test data:

	* openapi/swagger-with-shared-parameters.json: is referenced in "staging/src/k8s.io/cli-runtime/pkg/resource/query_param_verifier_test.go",
          in particular in this part: ´filepath.Join("..", "..", "artifacts", "openapi", "swagger-with-shared-parameters.json")´

	* batch.k8s.io_v1.json: is in
	  `staging/src/k8s.io/kubectl/pkg/explain/v2/templates/plaintext_test.go`,
          in a "//go:embed batch.k8s.io_v1.json".

Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-03-12 15:20:09 +01:00
Rodrigo Campos
f25830be53 test/e2e*: Remove references to UserNamespacesSupport feature gate
It's GA now.

Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-03-12 15:20:09 +01:00
Rodrigo Campos
527aa66124 feature: Move UserNamespacesSupport to GA
Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-03-12 15:20:02 +01:00
Kubernetes Prow Robot
a3ac5144e7 Merge pull request #137501 from danwinship/nftables-list-redux
Fix kube-proxy on systems with nft 1.1.3 (take 2)
2026-03-12 19:41:45 +05:30