Commit Graph

136094 Commits

Author SHA1 Message Date
Rita Zhang
c4f88de33e Move DRAAdminAccess feature to GA (#137373)
* Move DRAAdminAccess feature to GA

Signed-off-by: Rita Zhang <rita.z.zhang@gmail.com>

* address comments

Signed-off-by: Rita Zhang <rita.z.zhang@gmail.com>

---------

Signed-off-by: Rita Zhang <rita.z.zhang@gmail.com>
2026-03-05 23:42:21 +05:30
Kubernetes Prow Robot
3369e51e09 Merge pull request #137080 from cpanato/update-go-1.26
Bump dependencies, images and versions used to Go 1.26.0 and distroless iptables
2026-03-05 21:56:21 +05:30
Omer Aplatony
3799fc9942 Add unit tests for HPA metrics (#136670)
* Add unit tests for HPA metrics

Signed-off-by: Omer Aplatony <omerap12@gmail.com>

* removed mock monitor

Signed-off-by: Omer Aplatony <omerap12@gmail.com>

* fmt

Signed-off-by: Omer Aplatony <omerap12@gmail.com>

* spelling

Signed-off-by: Omer Aplatony <omerap12@gmail.com>

* lint

Signed-off-by: Omer Aplatony <omerap12@gmail.com>

* lint

Signed-off-by: Omer Aplatony <omerap12@gmail.com>

---------

Signed-off-by: Omer Aplatony <omerap12@gmail.com>
2026-03-05 19:10:26 +05:30
Nikhil
63080a762b kubectl describe: migrate to component-helpers resource package and add pod-level resources test (#137394)
* kubectl describe: migrate to component-helpers resource package and add pod-level resources test

Refactor describe.go to use k8s.io/component-helpers/resource package for pod resource
calculations. This migration enables proper support for pod-level resources feature.

Changes:
- Import resourcehelper from k8s.io/component-helpers/resource
- Replace PodRequestsAndLimits() with separate PodRequests() and PodLimits() calls

Add TestDescribeNodeWithPodLevelResources to verify describeNodeResource works correctly
when pods have pod-level resources (Spec.Resources) configured.

Signed-off-by: KunWuLuan <kunwuluan@gmail.com>

* address review feedback: verify computed values in test and deprecate PodRequestsAndLimits

---------

Signed-off-by: KunWuLuan <kunwuluan@gmail.com>
Co-authored-by: KunWuLuan <kunwuluan@gmail.com>
2026-03-05 18:18:25 +05:30
Kubernetes Prow Robot
8873025e93 Merge pull request #137347 from mortent/FixPrioritizedListWithAllocationModeAllAndSelectors
DRA: Fix incorrect behavior when using AllocationModeAll with PrioritizedList
2026-03-05 18:18:18 +05:30
Kubernetes Prow Robot
fbe2820983 Merge pull request #136944 from brejman/kep-5732-tas-placement-generation-phase
Prepare workload scheduling cycle for placement simulation
2026-03-05 16:48:19 +05:30
Kubernetes Prow Robot
c38abeb4ff Merge pull request #131572 from rexagod/metrics-api
component-base: introduce metrics api
2026-03-05 11:26:17 +05:30
Kubernetes Prow Robot
8bd1505fc0 Merge pull request #137108 from pohly/logtools-update
golangci-lint: bump to logtools v0.10.1
2026-03-05 10:14:16 +05:30
Kubernetes Prow Robot
ef8a14f679 Merge pull request #137349 from Jefftree/fix-model-name-bounding-dirs
Pass --readonly-pkg to openapi-gen in kube_codegen.sh
2026-03-05 09:26:16 +05:30
Kubernetes Prow Robot
83d2b7f7e0 Merge pull request #136568 from sairameshv/extRes_test
KEP-5004: Add upgrade/downgrade e2e tests for the DRAExtendedResources feature
2026-03-05 06:16:18 +05:30
Kubernetes Prow Robot
ad854f3495 Merge pull request #137411 from jpbetz/add-controlplane-test-owners
Add OWNERS file for test/integration/controlplane
2026-03-05 05:02:33 +05:30
Kubernetes Prow Robot
5f9a476986 Merge pull request #137337 from iPraveenParihar/fix/snapshot-metadata-script-permissions
e2e: add executable permission to snapshot metadata test script
2026-03-05 05:02:26 +05:30
Kubernetes Prow Robot
8020ce8511 Merge pull request #137066 from cnuss/fix/issues/136823
client-go/cache: fix logging
2026-03-05 05:02:19 +05:30
Jefftree
3e041492d9 Pass --readonly-pkg to openapi-gen and validation-gen in kube_codegen.sh 2026-03-04 16:25:49 -05:00
Kubernetes Prow Robot
cfc79e6d64 Merge pull request #137408 from dims/disable-hard-fail-on-deadcode-elimination-script-for-go-1.26
Disable hard fail on deadcode-elimination script for 1.26
2026-03-05 02:24:27 +05:30
Kubernetes Prow Robot
281e96a048 Merge pull request #137403 from soltysh/replicaset_wait
Wait for RS to report status rather than count pods
2026-03-05 02:24:18 +05:30
Jefftree
721eea74e7 update kube-openapi 2026-03-04 15:43:39 -05:00
Morten Torkildsen
3caaccc0d9 DRA: Fix incorrect behavior when using AllocationModeAll with PrioritizedList 2026-03-04 19:58:23 +00:00
Joe Betz
a48ca688da Add OWNERS file for test/integration/controlplane 2026-03-04 14:54:37 -05:00
Kubernetes Prow Robot
8275484dcf Merge pull request #137297 from atombrella/feature/pkg_forvar_modernize
Remove redundant variable re-assignment in for-loops under pkg
2026-03-05 00:28:20 +05:30
Arda Güçlü
d37765936d kubectl wait: Support multiple conditions (#136855)
* kubectl wait: Support multiple conditions

* Error out when --for is not passed

* Add examples for AND'ing and OR'ing multiple conditions
2026-03-04 23:30:27 +05:30
Kubernetes Prow Robot
4c2036030a Merge pull request #134159 from xigang/attach_detach_controller
Remove unused desiredStateOfWorld parameter from DetermineVolumeAction
2026-03-04 23:30:19 +05:30
Davanum Srinivas
4513498be1 Disable hard fail on deadcode-elimination script for 1.26
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2026-03-04 10:54:32 -05:00
Kubernetes Prow Robot
662241ed40 Merge pull request #137311 from Mujib-Ahasan/add-delete-suggestfor-remove
`kubectl delete`: add "remove" to SuggestFor
2026-03-04 20:58:35 +05:30
Kubernetes Prow Robot
a88389dc39 Merge pull request #137287 from Mujib-Ahasan/add-top-suggestfor-stats
kubectl top: add "stats" to SuggestFor
2026-03-04 20:58:27 +05:30
Kubernetes Prow Robot
e12b0c2bba Merge pull request #134997 from yangjunmyfm192085/attach
Add `--detach-keys` for `kubectl attach` command
2026-03-04 20:58:19 +05:30
kfess
7ea5b88209 cleanup: remove suggestfor from wait command (#137266)
* feature: remove suggestfor from wait command

* fix test case
2026-03-04 20:08:27 +05:30
Kubernetes Prow Robot
6ebcc611d2 Merge pull request #137221 from bishal7679/fix/flaky-kubectl-logs-137180
fix: [sig-cli] flaky kubectl logs --all-pods --all-containers Deployment test
2026-03-04 20:08:20 +05:30
xigang
9d10b1f799 refactor: remove unused desiredStateOfWorld parameter from DetermineVolumeAction
Signed-off-by: xigang <wangxigang2014@gmail.com>
2026-03-04 22:01:43 +08:00
Maciej Szulik
0dec4fa548 Wait for RS to report status rather than count pods
Signed-off-by: Maciej Szulik <soltysh@gmail.com>
2026-03-04 14:33:55 +01:00
Kubernetes Prow Robot
bd3c97fbd8 Merge pull request #137355 from lukaszwojciechowski/fix-cpuset-creation
cpumanager: Replace cpuset.CPUSet{} with cpuset.New() for proper initialization
2026-03-04 18:04:29 +05:30
Kubernetes Prow Robot
9d7dda7186 Merge pull request #137245 from atombrella/feature/slices_contains_pkg_controller
Update `pkg/controller` to use slices.Contains
2026-03-04 18:04:20 +05:30
Kubernetes Prow Robot
3c218d83cc Merge pull request #136973 from ardaguclu/valid-containers
List containers when given container is not found
2026-03-04 17:12:31 +05:30
Kubernetes Prow Robot
a7be90c6d5 Merge pull request #136663 from kfess/issue-136662
Add timezone to kubectl describe cronjob output
2026-03-04 17:12:23 +05:30
Patrick Ohly
b895ce734f golangci-lint: bump to logtools v0.10.1
This fixes a bug that caused log calls involving `klog.Logger` to not be
checked.

As a result we have to fix some code that is now considered faulty:

    ERROR: pkg/controller/serviceaccount/tokens_controller.go:382:1: A function should accept either a context or a logger, but not both. Having both makes calling the function harder because it must be defined whether the context must contain the logger and callers have to follow that. (logcheck)
    ERROR: func (e *TokensController) generateTokenIfNeeded(ctx context.Context, logger klog.Logger, serviceAccount *v1.ServiceAccount, cachedSecret *v1.Secret) ( /* retry */ bool, error) {
    ERROR: ^
    ERROR: pkg/controller/storageversionmigrator/storageversionmigrator.go:299:1: A function should accept either a context or a logger, but not both. Having both makes calling the function harder because it must be defined whether the context must contain the logger and callers have to follow that. (logcheck)
    ERROR: func (svmc *SVMController) runMigration(ctx context.Context, logger klog.Logger, gvr schema.GroupVersionResource, resourceMonitor *garbagecollector.Monitor, toBeProcessedSVM *svmv1beta1.StorageVersionMigration, listResourceVersion string) (err error, failed bool) {
    ERROR: ^
    ERROR: pkg/proxy/node.go:121:3: logging function "Error" should not use format specifier "%q" (logcheck)
    ERROR: 		klog.FromContext(ctx).Error(nil, "Timed out waiting for node %q to exist", nodeName)
    ERROR: 		^
    ERROR: pkg/proxy/node.go:123:3: logging function "Error" should not use format specifier "%q" (logcheck)
    ERROR: 		klog.FromContext(ctx).Error(nil, "Timed out waiting for node %q to be assigned IPs", nodeName)
    ERROR: 		^
    ERROR: pkg/scheduler/backend/queue/scheduling_queue.go:610:1: A function should accept either a context or a logger, but not both. Having both makes calling the function harder because it must be defined whether the context must contain the logger and callers have to follow that. (logcheck)
    ERROR: func (p *PriorityQueue) runPreEnqueuePlugin(ctx context.Context, logger klog.Logger, pl fwk.PreEnqueuePlugin, pInfo *framework.QueuedPodInfo, shouldRecordMetric bool) *fwk.Status {
    ERROR: ^
    ERROR: pkg/scheduler/framework/plugins/dynamicresources/extendeddynamicresources.go:286:1: A function should accept either a context or a logger, but not both. Having both makes calling the function harder because it must be defined whether the context must contain the logger and callers have to follow that. (logcheck)
    ERROR: func (pl *DynamicResources) deleteClaim(ctx context.Context, claim *resourceapi.ResourceClaim, logger klog.Logger) error {
    ERROR: ^
    ERROR: pkg/scheduler/framework/plugins/dynamicresources/extendeddynamicresources.go:499:1: A function should accept either a context or a logger, but not both. Having both makes calling the function harder because it must be defined whether the context must contain the logger and callers have to follow that. (logcheck)
    ERROR: func (pl *DynamicResources) waitForExtendedClaimInAssumeCache(
    ERROR: ^
    ERROR: pkg/scheduler/framework/plugins/dynamicresources/extendeddynamicresources.go:528:1: A function should accept either a context or a logger, but not both. Having both makes calling the function harder because it must be defined whether the context must contain the logger and callers have to follow that. (logcheck)
    ERROR: func (pl *DynamicResources) createExtendedResourceClaimInAPI(
    ERROR: ^
    ERROR: pkg/scheduler/framework/plugins/dynamicresources/extendeddynamicresources.go:592:1: A function should accept either a context or a logger, but not both. Having both makes calling the function harder because it must be defined whether the context must contain the logger and callers have to follow that. (logcheck)
    ERROR: func (pl *DynamicResources) unreserveExtendedResourceClaim(ctx context.Context, logger klog.Logger, pod *v1.Pod, state *stateData) {
    ERROR: ^
    ERROR: pkg/scheduler/framework/runtime/batch.go:171:1: A function should accept either a context or a logger, but not both. Having both makes calling the function harder because it must be defined whether the context must contain the logger and callers have to follow that. (logcheck)
    ERROR: func (b *OpportunisticBatch) batchStateCompatible(ctx context.Context, logger klog.Logger, pod *v1.Pod, signature fwk.PodSignature, cycleCount int64, state fwk.CycleState, nodeInfos fwk.NodeInfoLister) bool {
    ERROR: ^
    ERROR: staging/src/k8s.io/component-base/featuregate/feature_gate.go:890:4: Additional arguments to Info should always be Key Value pairs. Please check if there is any key or value missing. (logcheck)
    ERROR: 			logger.Info("Warning: SetEmulationVersionAndMinCompatibilityVersion will change already queried feature", "featureGate", feature, "oldValue", oldVal, newVal)
    ERROR: 			^
    ERROR: test/images/sample-device-plugin/sampledeviceplugin.go:108:2: logging function "Info" should not use format specifier "%s" (logcheck)
    ERROR: 	logger.Info("pluginSocksDir: %s", pluginSocksDir)
    ERROR: 	^
    ERROR: test/images/sample-device-plugin/sampledeviceplugin.go:123:2: logging function "Info" should not use format specifier "%s" (logcheck)
    ERROR: 	logger.Info("CDI_ENABLED: %s", cdiEnabled)
    ERROR: 	^

While waiting for this to merge, another call was added which also doesn't
follow conventions:

    ERROR: pkg/kubelet/kubelet.go:2454:1: A function should accept either a context or a logger, but not both. Having both makes calling the function harder because it must be defined whether the context must contain the logger and callers have to follow that. (logcheck)
    ERROR: func (kl *Kubelet) deletePod(ctx context.Context, logger klog.Logger, pod *v1.Pod) error {
    ERROR: ^

Contextual logging has been beta and enabled by default for several releases
now. It's mostly just a matter of wrapping up and declaring it GA. Therefore
the calls which directly call WithName or WithValues (always have an effect)
are left as-is instead of converting them to use the klog wrappers (support
disabling the effect). To allow that, the linter gets reconfigured to not
complain about this anymore, anywhere.

The calls which would have to be fixed otherwise are:

    ERROR: pkg/kubelet/cm/dra/claiminfo.go:170:11: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger = logger.WithName("dra-claiminfo")
    ERROR: 	         ^
    ERROR: pkg/kubelet/cm/dra/healthinfo.go:45:11: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger = logger.WithName("dra-healthinfo")
    ERROR: 	         ^
    ERROR: pkg/kubelet/cm/dra/healthinfo.go:89:11: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger = logger.WithName("dra-healthinfo")
    ERROR: 	         ^
    ERROR: pkg/kubelet/cm/dra/healthinfo.go:157:11: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger = logger.WithName("dra-healthinfo")
    ERROR: 	         ^
    ERROR: pkg/kubelet/cm/dra/manager.go:175:12: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger := klog.FromContext(ctx).WithName("dra-manager")
    ERROR: 	          ^
    ERROR: pkg/kubelet/cm/dra/manager.go:239:12: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger := klog.FromContext(ctx).WithName("dra-manager")
    ERROR: 	          ^
    ERROR: pkg/kubelet/cm/dra/manager.go:593:12: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger := klog.FromContext(ctx).WithName("dra-manager")
    ERROR: 	          ^
    ERROR: pkg/kubelet/cm/dra/manager.go:781:12: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger := klog.FromContext(context.Background()).WithName("dra-manager")
    ERROR: 	          ^
    ERROR: pkg/kubelet/cm/dra/manager.go:898:12: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger := klog.FromContext(ctx).WithName("dra-manager")
    ERROR: 	          ^
    ERROR: pkg/kubelet/cm/dra/manager_test.go:1638:15: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 				logger := klog.FromContext(streamCtx).WithName(st.Name())
    ERROR: 				          ^
    ERROR: pkg/kubelet/cm/dra/plugin/dra_plugin.go:77:12: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger := klog.FromContext(ctx).WithName("dra-plugin")
    ERROR: 	          ^
    ERROR: pkg/kubelet/cm/dra/plugin/dra_plugin.go:108:12: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger := klog.FromContext(ctx).WithName("dra-plugin")
    ERROR: 	          ^
    ERROR: pkg/kubelet/cm/dra/plugin/dra_plugin.go:161:12: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	logger := klog.FromContext(ctx).WithName("dra-plugin")
    ERROR: 	          ^
    ERROR: staging/src/k8s.io/dynamic-resource-allocation/resourceslice/tracker/tracker.go:695:14: function "WithValues" should be called through klogr.LoggerWithValues (logcheck)
    ERROR: 			logger := logger.WithValues("device", deviceID)
    ERROR: 			          ^
    ERROR: test/integration/apiserver/watchcache_test.go:42:54: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	etcd0URL, stopEtcd0, err := framework.RunCustomEtcd(klog.FromContext(ctx).WithName("etcd0"), "etcd_watchcache0", etcdArgs)
    ERROR: 	                                                    ^
    ERROR: test/integration/apiserver/watchcache_test.go:47:54: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 	etcd1URL, stopEtcd1, err := framework.RunCustomEtcd(klog.FromContext(ctx).WithName("etcd1"), "etcd_watchcache1", etcdArgs)
    ERROR: 	                                                    ^
    ERROR: test/integration/scheduler_perf/scheduler_perf.go:1149:12: function "WithName" should be called through klogr.LoggerWithName (logcheck)
    ERROR: 		logger = logger.WithName(tCtx.Name())
    ERROR: 		         ^
2026-03-04 12:08:18 +01:00
Bartosz
09379fbba7 Remove test for unhandled case.
Assume placement will always contain nodes that are present in the
snapshot
2026-03-04 10:11:57 +00:00
Bartosz
1140b62b68 Update fwk.Placement type 2026-03-04 09:48:31 +00:00
Sai Ramesh Vanka
4bc4b7313e Address review comments
- Rebase the code with #137046 changes
- Remove the duplication in the DRAExtendedResource upgrade/downgrade test code

Signed-off-by: Sai Ramesh Vanka <svanka@redhat.com>
2026-03-04 12:48:44 +05:30
Kubernetes Prow Robot
dd0958fece Merge pull request #136851 from jiefeng-xu/jiefeng/fix-gpu-flake-136378
test/e2e/node: reduce flakiness in GPU nvidia-smi test
2026-03-04 08:56:17 +05:30
Kubernetes Prow Robot
f82c373b69 Merge pull request #137283 from LarytheLord/docs/envvar-c-identifier-wording-51187
docs(api): clarify env var key constraints for env-from fields
2026-03-04 07:24:23 +05:30
Kubernetes Prow Robot
80eaaa3991 Merge pull request #137192 from kannon92/observedpodgeneration-move-all-to-conformance
promote two test cases for Observedgeneration to conformance
2026-03-04 07:24:16 +05:30
Kubernetes Prow Robot
a0594a28a4 Merge pull request #136954 from BenTheElder/kube-runner
switch server images to kube-log-runner
2026-03-04 06:30:17 +05:30
杨军10092085
ee02a8ab32 Add --detach-keys for kubectl attach command 2026-03-04 08:24:57 +08:00
Benjamin Elder
9f8eca1566 add kube-log-runner to images on the fly, replicating the same /go-runner path as the current base image
d98562ea2e/images/build/go-runner/Dockerfile (L68-L70)
2026-03-03 16:00:02 -08:00
Kubernetes Prow Robot
5bc6d200a2 Merge pull request #137379 from aramase/aramase/c/drop_v1alpha1_webhookadmission
drop v1alpha1 webhookadmission configuration
2026-03-04 05:20:35 +05:30
Kubernetes Prow Robot
e08e598df0 Merge pull request #137291 from everettraven/upstream/dv/maxLength-fixup
[Declarative Validation] Bring `k8s:maxLength` tag in line with OpenAPI `maxLength` validation semantics
2026-03-04 05:20:27 +05:30
Kubernetes Prow Robot
5f18de61b0 Merge pull request #137174 from richabanker/flagz-beta
Graduate flagz API to beta
2026-03-04 05:20:18 +05:30
Kubernetes Prow Robot
ba4ac6d65b Merge pull request #137003 from hoteye/pr1-kubelet-podworkers-core
kubelet: tighten podworkers context flow and consolidate kubelet logcheck scope
2026-03-04 04:30:27 +05:30
Kubernetes Prow Robot
cb01fb2641 Merge pull request #136368 from bhope/metrics-beta-endpointslice-controller
Promote endpointslice metrics to beta
2026-03-04 04:30:20 +05:30
Kubernetes Prow Robot
de9a9b6335 Merge pull request #136703 from yosri-brh/fix-configmap-example
Fix kubectl create configmap example
2026-03-04 03:32:17 +05:30