Commit Graph

28772 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
f09cd625bc Merge pull request #135007 from ania-borowiec/nnn_code_update
KEP-5278 Bring back clearing NominatedNodeName after scheduling or binding failure
2025-11-04 07:14:24 -08:00
Arda Güçlü
9113013eb8 Introduce --as-user-extra persistent flag in kubectl (#134378)
* Introduce --as-user-extra as persistent flag

* Add integration test to verify the behavior

* Update flag type to string slice
2025-11-04 07:14:09 -08:00
Kubernetes Prow Robot
c7b6dfb144 Merge pull request #134730 from ania-borowiec/verify_ongoing_preemption
Verify if pod has ongoing async preemption before evicting pods
2025-11-04 06:22:09 -08:00
Kubernetes Prow Robot
4d0d412686 Merge pull request #135093 from pohly/dra-e2e-kind-jobs-config
Revert "prepare DRA kind config for kubeadm v1beta4"
2025-11-04 04:50:15 -08:00
Ania Borowiec
191ab8d78d Integration test verifying that in case a preemptor pod with higher priority arrives while preemption is ongoing, the lower priority preemptor does not get stuck in unschedulable 2025-11-04 11:57:39 +00:00
Ania Borowiec
9640da5452 Verify if pod has ongoing async preemption before evicting pods 2025-11-04 11:57:34 +00:00
Kubernetes Prow Robot
34bb3477a2 Merge pull request #135069 from jsafrane/snapshot-v1beta2
test: update volume group snapshots to v1beta2
2025-11-04 02:34:07 -08:00
Ania Borowiec
c98804b77f Fix existing integration tests for NominatedNodeName 2025-11-04 09:45:50 +00:00
Patrick Ohly
1fc389c43f Revert "prepare DRA kind config for kubeadm v1beta4"
This reverts commit d17ed9be17.

The CI jobs append

    kubeadmConfigPatches:
    - |
      kind: ClusterConfiguration
      etcd:
        local:
          dataDir: /tmp/etcd

With that commit also adding kubeadmConfigPatches, all jobs break with

     mapping key "kubeadmConfigPatches" already defined at line 14

We have to update jobs first, then add the change back.
2025-11-04 09:37:32 +01:00
Kubernetes Prow Robot
48c56e04e0 Merge pull request #135017 from liggitt/stateful-set-noop-rollout
Fix spurious statefulset rollout from 1.33 → 1.34
2025-11-03 19:58:11 -08:00
Kubernetes Prow Robot
ddec0243ed Merge pull request #135016 from BenTheElder/kubeadm-kind-v1beta4
prepare kind configs for kubeadm v1beta4
2025-11-03 19:58:04 -08:00
Jordan Liggitt
979c442774 Fix spurious workload rollout due to null creationTimestamp in controller revisions 2025-11-03 17:11:06 -05:00
Kubernetes Prow Robot
3ec72e2e97 Merge pull request #135070 from pohly/e2e-slow-priority
E2E framework: start slow tests first
2025-11-03 13:24:11 -08:00
Kubernetes Prow Robot
462c869354 Merge pull request #134326 from sairameshv/global_cache_dra
Add global cache to map between the deviceclass and the extended resource
2025-11-03 10:40:06 -08:00
Kubernetes Prow Robot
4e8499740e Merge pull request #134985 from swatisehgal/node-cm-ctx-logging-migration
node: cm: migrate container manager to contextual logging
2025-11-03 09:34:12 -08:00
Kubernetes Prow Robot
da2eea1bf2 Merge pull request #134263 from ardaguclu/autoscale-dryrun-client
Add given namespace in dryrun=client output of HPA
2025-11-03 09:34:05 -08:00
Jan Safranek
a3bf2abddb Move a comment about ginkgo to code that runs ginkgo 2025-11-03 18:29:46 +01:00
Jan Safranek
3e33e61968 Enable group snapshot tests
e2e.test now requires CSI_PROW_ENABLE_GROUP_SNAPSHOT to be enabled to run
the csi-driver-hostpath tests with volume group snapshots.

See https://github.com/kubernetes/kubernetes/pull/134214/
2025-11-03 18:28:36 +01:00
Patrick Ohly
f9ef004916 E2E framework: start slow tests first
This avoids the risk of having a slow test started towards the end of a run,
which then would cause the run to take longer. When started early they can run
in parallel to other tests. In serial runs it doesn't matter.

The implementation maps the Slow label to the new ginkgo.SpecPriority. The
default is 0. Tests with priority 1 run first.
2025-11-03 18:17:59 +01:00
Jan Safranek
321c1e37c0 Update group snapshot tests to v1beta2
Copy VolumeGroupSnapshot v1beta2 CRDs from the external-snapshotter and
disable v1beta1 API in them - we can't run the conversion webhook in e2e
tests easily.

Update e2e tests to use v1beta2.
2025-11-03 17:53:30 +01:00
Kubernetes Prow Robot
4f3a08592b Merge pull request #135057 from pohly/dra-e2e-conformance-candidates-removal
DRA E2E: stop labeling tests as ConformanceCandidate
2025-11-03 07:44:39 -08:00
Arda Güçlü
c13c581459 Add given namespace in dryrun=client output of HPA 2025-11-03 18:35:45 +03:00
yliao
3eab698884 fixed unit test and integration test failures
Fix minor nits

Signed-off-by: Sai Ramesh Vanka <svanka@redhat.com>
2025-11-03 20:07:01 +05:30
Kubernetes Prow Robot
4b5369008a Merge pull request #135054 from bart0sh/PR205-DRA-extended-resources-e2e-revert-WithFlaky
DRA: revert "added WithFlaky() to the device plugin test case: supports extended resources together with ResourceClaim"
2025-11-03 06:02:28 -08:00
Kubernetes Prow Robot
4e5220939e Merge pull request #134927 from macsko/dont_delete_pods_with_deletiontimestamp
Don't preempt pods with DeletionTimestamp set
2025-11-03 06:02:14 -08:00
Patrick Ohly
6dd086536f DRA E2E: stop labeling tests as ConformanceCandidate
There's no plan anymore to promote these tests. They would have to be rewritten
to satisfy conformance test requirements (for example, self-contained and easy
to review) which doesn't seem worthwhile.
2025-11-03 14:02:34 +01:00
Ed Bartosh
30de423597 Revert "added WithFlaky() to the device plugin test case: supports extended resources together with ResourceClaim"
This reverts commit edfa9a5bd2
as https://github.com/kubernetes/kubernetes/issues/133488 has been resolved.
2025-11-03 12:50:21 +02:00
Sai Ramesh Vanka
d8c66ffb63 Add a global cache to support DRA's extended resource to the device
class mapping

- Add a new interface "DeviceClassResolver" in the scheduler framework
- Add a global cache of mapping between the extended resource and the
  device class
- Cache can be leveraged by the k8s api-server, controller-manager along with the scheduler
- This change helps in delegating the requests to the dynamicresource
  plugin based on the mapping during the node update events and thus
avoiding an extra scheduling cycle

Signed-off-by: Sai Ramesh Vanka <svanka@redhat.com>
2025-11-03 12:31:16 +05:30
Patrick Ohly
34021d451d Revert "E2E framework: start slow tests first"
This reverts commit cff07e7551.

The commit caused several kubeadm jobs to fail while executing all conformance
tests (including slow ones) in parallel. Sometimes execution took longer and
ran into the overall timeout, sometimes there was:

    [FAILED] Expected
        <int>: 440
    to be ==
        <int>: 400
    In [It] at: k8s.io/kubernetes/test/e2e/apimachinery/chunking.go:202

It looks like the tests are flaky and/or reveal a real bug when slow tests run
all in parallel at the same time.

This should work, but doesn't right now, so let's revert until that problem is fixed.
2025-11-02 20:09:28 +01:00
Patrick Ohly
cff07e7551 E2E framework: start slow tests first
This avoids the risk of having a slow test started towards the end of a run,
which then would cause the run to take longer. When started early they can run
in parallel to other tests. In serial runs it doesn't matter.

The implementation maps the Slow label to the new ginkgo.SpecPriority. The
default is 0. Tests with priority 1 run first.
2025-11-01 09:52:09 +01:00
Benjamin Elder
2b0bfbfb8e removed unused functionality from run_group_snapshot.sh and prepare for kubeadm v1beta4 config 2025-10-31 14:19:43 -07:00
Benjamin Elder
a3ce49a11e prepare kms kind config for kubeadm v1beta4 2025-10-31 14:19:43 -07:00
Benjamin Elder
d17ed9be17 prepare DRA kind config for kubeadm v1beta4 2025-10-31 13:04:56 -07:00
Kubernetes Prow Robot
1b6d0c7c03 Merge pull request #134965 from tsj-30/fix-dra-devicebindingconditions-flake
test: fix flake in DRA DeviceBindingCondition
2025-10-31 12:26:03 -07:00
Kubernetes Prow Robot
72e06a7516 Merge pull request #134982 from natasha41575/ippr-tests
[InPlacePodVerticalScaling] Reformat a couple of e2e tests
2025-10-31 11:34:13 -07:00
Swati Sehgal
f2d075ea65 Address review comments
Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2025-10-31 17:41:34 +00:00
Kubernetes Prow Robot
4ca91a6542 Merge pull request #134994 from liggitt/drop-strict-cost
Drop locked StrictCostEnforcementForVAP and StrictCostEnforcementForWebhooks feature gates
2025-10-31 07:38:12 -07:00
Kubernetes Prow Robot
ce7ba8aa76 Merge pull request #134959 from atiratree/deployment-integration-tests
add integration tests for pod replacement during scaling and Recreate/RollingUpdate strategies
2025-10-31 07:38:04 -07:00
Kubernetes Prow Robot
279f214cc5 Merge pull request #134989 from alaypatel07/extended-resources-scheduler-perf
refactor scheduler_perf test for extended resources by dra to have 10-50 device classes
2025-10-31 03:52:12 -07:00
Kubernetes Prow Robot
b4d4cc9384 Merge pull request #123642 from aramase/aramase/f/kep_3331_jwks_metrics
Add JWKS fetch metrics for jwt authenticator
2025-10-30 22:42:02 -07:00
Jordan Liggitt
bd11e52bfc Drop locked StrictCostEnforcementForVAP and StrictCostEnforcementForWebhooks feature gates 2025-10-31 00:03:42 -04:00
Kubernetes Prow Robot
a13ad97048 Merge pull request #134949 from natasha41575/ippr-ga
Promote InPlacePodVerticalScaling to GA
2025-10-30 20:06:01 -07:00
Kubernetes Prow Robot
1ffcea577b Merge pull request #134984 from michaelasp/crdObsGeneration
Add ObservedGeneration to CRD conditions
2025-10-30 16:22:02 -07:00
Michael Aspinwall
cde15e6450 Add ObservedGeneration to CRD conditions 2025-10-30 22:30:01 +00:00
Alay Patel
02289d08f6 refactor scheduler_perf test for extended resources by dra to have 10-50 device classes
Signed-off-by: Alay Patel <alayp@nvidia.com>
2025-10-30 16:55:32 -04:00
Kubernetes Prow Robot
9efb7ee538 Merge pull request #134313 from richabanker/statusz-structured
[KEP:4827] Structured statusz
2025-10-30 13:16:10 -07:00
Kubernetes Prow Robot
fb69410824 Merge pull request #133980 from siyuanfoundation/min-compat
[KEP-4330] add min-compatibility-version to control plane.
2025-10-30 13:16:03 -07:00
Kubernetes Prow Robot
31f83cdf2b Merge pull request #134647 from torredil/kadane-6123912
Enable `MutableCSINodeAllocatableCount` by default in Beta
2025-10-30 11:50:03 -07:00
Siyuan Zhang
67143028e7 Add --min-compatibility flag.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2025-10-30 13:36:38 -05:00
Swati Sehgal
05f67d834a node: cm: migrate container manager to contextual logging
This commit migrates the container manager package to use
contextual logging.

This follows the contextual logging migration pattern where:
- Logger is passed from the boundary down to implementations
- klog.TODO() is used at call sites where context is not yet available
- Functions with context.Context extract logger via klog.FromContext(ctx)
- klog.InfoS/ErrorS/V().InfoS calls are replaced with logger.Info/Error/V().Info
- Sub-managers receive proper logger context from their callers

Some call sites still use klog.TODO() as placeholders, with TODO
comments indicating these will be replaced with proper contextual loggers
as the migration continues upward through the call stack.

Test/fake implementations use klog.Background() which is the appropriate
choice for test code where no real context is available.

Mock file updates (pkg/kubelet/cm/testing/mocks.go) were done manually
due to mockery tool incompatibility with Go 1.25 and will be committed
separately with an explanation.

Key changes:

1. PodContainerManager and ContainerManager interface updates:
   - PodContainerManager.EnsureExists: add logger parameter
   - PodContainerManager.Destroy: add logger parameter
   - PodContainerManager.ReduceCPULimits: add logger parameter
   - PodContainerManager.SetPodCgroupConfig: add logger parameter
   - ContainerManager.UpdateQOSCgroups: add logger parameter
   - Update all implementations (Linux, Windows, stub, noop, fake)

2. Helper function updates:
   - GetKubeletContainer: add logger parameter (Linux and unsupported platforms)
   - Update cmd/kubelet/app/server.go to pass logger to GetKubeletContainer
   - Comment out type assertion in helpers.go due to signature change

3. Cgroup manager contextual logging:
   - CgroupManager interface methods updated to accept logger:
     * Destroy: add logger parameter
     * ReduceCPULimits: add logger parameter
     * SetCgroupConfig: add logger parameter
   - Update cgroupCommon and unsupportedCgroupManager implementations
   - Migrate klog.InfoS/V().InfoS calls to logger.Info/V().Info

4. Container manager implementation updates:
   - Extract logger from context in NewContainerManager() and Start()
   - Pass logger to sub-managers (deviceManager, topologyManager)
   - Update DRA manager initialization to use logger from context
   - Migrate klog.InfoS/ErrorS to logger.Info/Error throughout

5. Call sites updated with TODO comments:
   - pkg/kubelet/kubelet.go: UpdateQOSCgroups, EnsureExists
   - pkg/kubelet/kubelet_pods.go: UpdateQOSCgroups, ReduceCPULimits, Destroy
   - pkg/kubelet/kuberuntime/kuberuntime_manager.go: SetPodCgroupConfig
   - pkg/kubelet/kuberuntime/kuberuntime_manager_test.go: test expectations

Most call sites currently use klog.TODO() as placeholders, with TODO
comments indicating these will be replaced with proper contextual loggers
as the migration continues upward through the call stack.

Test/fake implementations use klog.Background() which is the appropriate
choice for test code where no real context is available.

Mock file updates (pkg/kubelet/cm/testing/mocks.go) were done manually
due to mockery tool incompatibility with Go 1.25 and will be committed
separately with an explanation.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2025-10-30 18:34:03 +00:00