Commit Graph

3323 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
036e624317 Merge pull request #134918 from mariafromano-25/cleanup-sidecar-feature
SidecarContainer feature to Node Conformance
2025-10-28 15:22:08 -07:00
Kubernetes Prow Robot
7be689fcd6 Merge pull request #134816 from swatisehgal/device-plugin-e2e-flakiness-2
node: e2e: update podresources check post fix of kubernetes#119423
2025-10-28 07:49:42 -07:00
Maria Romano Silva
86bfcd5eec oopsie missed two, should fix failing tests 2025-10-28 01:26:32 +00:00
Maria Romano Silva
a277269159 updating sidecar feature to node conformance 2025-10-27 23:43:43 +00:00
Kubernetes Prow Robot
6207429cd5 Merge pull request #134303 from eun2ce/cleanup-sig-node-e2e-features
Remove redundant KubeletPSI feature label from sig-node e2e test
2025-10-27 12:31:35 -07:00
eun2ce
b2571fe170 Add WithNodeConformance to KubeletPSI test context
- Add framework.WithNodeConformance() to indicate test doesn't require special environment
- This addresses reviewer feedback on PR #134303
2025-10-25 20:22:59 +09:00
Swati Sehgal
1e3a6e18d0 node: e2e: update podresources check post fix of kubernetes#119423
With kubernetes/kubernetes#132028 merged, pods in terminal states are no longer
reported by the podresources API. The previous test logic accounted for the old
behavior where even failed pods appeared in the API response (tracked under k/k
issue #119423). As a result, we used to expect the failed test pod to be present in the
response but with an empty device set.

This change updates the test to reflect the new, correct behavior:
1. The failed test pod should no longer appear in the podresources API response.
2. The test now asserts absence of the failed pod rather than checking for an empty device assignment.

This simplifies the test logic and aligns expectations with the current upstream
behavior of the podresources API.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2025-10-23 14:12:21 +01:00
Kubernetes Prow Robot
905d72b9bb Merge pull request #134757 from neolit123/1.35-fix-e2e-test-hostname-override
/test: use a different image for hostname override e2e tests
2025-10-22 17:38:45 -07:00
Lubomir I. Ivanov
804708df53 /test: use a different image for hostname override e2e tests
As discovered in ticket 134737 `hostname` is buggy on busybox
due to the musl backend that it uses. something in the /etc/hosts
that k8s generates trips its parser and it doesn't work properly
in the ipv6 tests.

To workaround that use an image that has a glibc backend,
so that the hostname command works.
2025-10-22 15:07:01 +02:00
Swati Sehgal
13511897bd node: e2e: extend wait for resources exported by sample device plugin
In the device plugin node reboot e2e test, the test previously waited a
short period for the resources exported by the sample device plugin to
appear on the local node. On slower test nodes, the plugin may take
longer to register, causing flakes where the expected devices are not
yet available.

This change increases the polling duration to 2 minutes, ensuring the test
waits long enough for the expected device capacity and allocatable resources
to appear, improving test stability.

This commit also updates the assertion message to be more explicit making
failures clearer and improving test reliability.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2025-10-21 13:59:17 +01:00
Swati Sehgal
c2e1fdeb7a node: e2e: Ensure device plugin pod is Running/Ready before registration
In the device plugin node reboot e2e test, the registration trigger
(control file deletion) was being executed immediately after pod creation.
This could create a race condition: the device plugin container might not
be fully running, causing the test to flake when devices were not reported
as available on the node.

This change explicitly waits for the sample device plugin pod to reach the
Running/Ready state before deleting the registration control file. This
ensures that the device plugin is ready to register its devices with the
kubelet, eliminating a possible source of test flakiness.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2025-10-21 13:41:30 +01:00
Kubernetes Prow Robot
031f4d541a Merge pull request #133072 from AadiDev005/fix-sidecar-startup-probe
Fix startup probe worker termination for sidecar containers
2025-10-20 12:26:37 -07:00
Kubernetes Prow Robot
e34f01402f Merge pull request #134703 from pohly/e2e-fix-test-name-uniqueness
e2e: find and fix reuse of test names
2025-10-18 15:38:07 -07:00
eun2ce
d07b769418 Replace feature label with WithFeatureGate for KubeletPSI test
- Remove feature.KubeletPSI label as it may be redundant for categorization
- Add framework.WithFeatureGate(features.KubeletPSI) for proper feature gate checking
- Remove redundant utilfeature.DefaultFeatureGate.Enabled check in BeforeEach

This addresses the cleanup goal in issue #134172 to replace feature labels
with feature gates where appropriate.
2025-10-18 15:45:04 +09:00
Kubernetes Prow Robot
b067e45290 Merge pull request #134695 from kannon92/procmount-usernamespace
usernamespace and procmount are tightly coupled. Disable them together
2025-10-17 21:56:40 -07:00
Kubernetes Prow Robot
1f34c16772 Merge pull request #134690 from haircommander/gc-conformance
test: move kubelet GC tests to node conformance
2025-10-17 19:00:40 -07:00
Kubernetes Prow Robot
9dcfb3d04b Merge pull request #133373 from AkihiroSuda/carry-133278
[Carry 133278] kubelet: Don't ignore idsPerPod config #133278
2025-10-17 15:40:43 -07:00
Kevin Hannon
03c7962d17 usernamespace and procmount are tightly coupled. Disable them together 2025-10-17 16:40:45 -04:00
Patrick Ohly
d0a2a0d22e e2e: find and fix reuse of test names
This reports and fixes for test/e2e:

    ERROR: E2E suite initialization was faulty, these errors must be fixed:
    ERROR: apimachinery/mutatingadmissionpolicy.go:184: full test name is not unique: "[sig-api-machinery] MutatingAdmissionPolicy [Privileged:ClusterAdmin] [Feature:MutatingAdmissionPolicy] [FeatureGate:MutatingAdmissionPolicy] [Beta] [Feature:OffByDefault] should support MutatingAdmissionPolicy API operations" (/nvme/gopath/src/k8s.io/kubernetes/test/e2e/apimachinery/mutatingadmissionpolicy.go:184, /nvme/gopath/src/k8s.io/kubernetes/test/e2e/apimachinery/mutatingadmissionpolicy.go:606)
    ERROR: apimachinery/mutatingadmissionpolicy.go:412: full test name is not unique: "[sig-api-machinery] MutatingAdmissionPolicy [Privileged:ClusterAdmin] [Feature:MutatingAdmissionPolicy] [FeatureGate:MutatingAdmissionPolicy] [Beta] [Feature:OffByDefault] should support MutatingAdmissionPolicyBinding API operations" (/nvme/gopath/src/k8s.io/kubernetes/test/e2e/apimachinery/mutatingadmissionpolicy.go:412, /nvme/gopath/src/k8s.io/kubernetes/test/e2e/apimachinery/mutatingadmissionpolicy.go:834)
    ERROR: common/node/pod_level_resources.go:250: full test name is not unique: "[sig-node] Pod Level Resources [Serial] [Feature:PodLevelResources] [FeatureGate:PodLevelResources] [Beta] Guaranteed QoS pod with container resources" (/nvme/gopath/src/k8s.io/kubernetes/test/e2e/common/node/pod_level_resources.go:250 (2x))
    ERROR: dra/dra.go:1899: full test name is not unique: "[sig-node] [DRA] kubelet [Feature:DynamicResourceAllocation] [FeatureGate:DRAConsumableCapacity] [Alpha] [Feature:OffByDefault] [FeatureGate:DynamicResourceAllocation] must allow multiple allocations and consume capacity [KubeletMinVersion:1.34]" (/nvme/gopath/src/k8s.io/kubernetes/test/e2e/dra/dra.go:1899 (2x))
    ERROR: storage/testsuites/volume_group_snapshottable.go:173: full test name is not unique: "[sig-storage] CSI Volumes [Driver: csi-hostpath] [Testpattern:  (delete policy)] volumegroupsnapshottable [Feature:volumegroupsnapshot] VolumeGroupSnapshottable  should create snapshots for multiple volumes in a pod" (/nvme/gopath/src/k8s.io/kubernetes/test/e2e/storage/testsuites/volume_group_snapshottable.go:173 (2x))
    ERROR: storage/testsuites/volume_group_snapshottable.go:173: full test name is not unique: "[sig-storage] CSI Volumes [Driver: pd.csi.storage.gke.io] [Serial] [Testpattern:  (delete policy)] volumegroupsnapshottable [Feature:volumegroupsnapshot] VolumeGroupSnapshottable  should create snapshots for multiple volumes in a pod" (/nvme/gopath/src/k8s.io/kubernetes/test/e2e/storage/testsuites/volume_group_snapshottable.go:173 (2x))

And for test/e2e_node:

    ERROR: cpu_manager_test.go:1622: full test name is not unique: "[sig-node] CPU Manager [Serial] [Feature:CPUManager] when checking the CFS quota management should disable for guaranteed pod with exclusive CPUs assigned" (/nvme/gopath/src/k8s.io/kubernetes/test/e2e_node/cpu_manager_test.go:1622, /nvme/gopath/src/k8s.io/kubernetes/test/e2e_node/cpu_manager_test.go:1642)
    ERROR: eviction_test.go:800: full test name is not unique: "[sig-node] LocalStorageCapacityIsolationFSQuotaMonitoring [Slow] [Serial] [Disruptive] [Feature:LocalStorageCapacityIsolationQuota] [Feature:LSCIQuotaMonitoring] [Feature:UserNamespacesSupport] when we run containers that should cause use quotas for LSCI monitoring (quotas enabled: true)  should eventually evict all of the correct pods" (/nvme/gopath/src/k8s.io/kubernetes/test/e2e_node/eviction_test.go:800 (2x))
2025-10-17 20:19:52 +02:00
Peter Hunt
70a8babb09 test: move kubelet GC tests to node conformance
and drop the feature.GarbageCollect, as it's not needed anymore

Signed-off-by: Peter Hunt <pehunt@redhat.com>
2025-10-17 13:32:46 -04:00
Rodrigo Campos
2a488616bf tests/e2e_node: Add test for userNamespaces.idsPerPod
Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2025-10-15 19:49:38 +09:00
Karthik Bhat
ebc4768ff3 Increase time out for verifying metrics 2025-10-09 15:22:16 +05:30
Kubernetes Prow Robot
da05e3ccc7 Merge pull request #134369 from rbiamru/add-nodeconformance-mirror-pod
test/e2e_node: mark MirrorPod update tests as [NodeConformance]
2025-10-06 11:21:08 -07:00
Kubernetes Prow Robot
f74a7458d9 Merge pull request #134173 from toVersus/test/deflake-sidecar-e2e
deflake e2e: ensure pod with sidecars restarts in correct order after node reboot
2025-10-06 11:21:00 -07:00
HirazawaUi
f9a893be37 Fix incorrect error messages 2025-10-06 00:42:21 +08:00
rbiamru
6e574cabdd test/e2e_node: mark MirrorPod update tests as [NodeConformance] 2025-10-01 21:54:21 -04:00
Ciprian Hacman
2b3f1877be Update NPD to v1.34.0 2025-09-27 19:57:47 +03:00
Tsubasa Nagasawa
bc7ea997a0 deflake e2e: ensure pod with sidecars restarts in correct order after node reboot
Signed-off-by: Tsubasa Nagasawa <toversus2357@gmail.com>
Co-authored-by: Hironori Shiina <shiina.hironori@gmail.com>
2025-09-24 07:36:56 +09:00
Kubernetes Prow Robot
faf249a3f0 Merge pull request #134166 from pohly/dra-e2e-node-registrar-cleanup
DRA E2E node: fix cleanup of tests using separate registrar
2025-09-20 01:58:12 -07:00
Patrick Ohly
343a5db965 DRA E2E node: fix cleanup of tests using separate registrar
8fed05c5b7 fixed the cleanup of tests which start
registrar and service in a single call. But tests which first started the
registrar and then the service separately still had the problem:

- registrar is started with test context
- pods remain running at end of test
- registrar stops because of test context cancellation
- pods remain pending despite deletion because the driver gets
  unregistered (timing dependent, so this may have flaked)

The fix is to also clean up the registrar after the test, in reverse startup
order.
2025-09-19 18:47:21 +02:00
Ed Bartosh
871f87eaec e2e_node: test DRA plugin gRPC connection reuse
Added e2e_node test to verify that the Kubelet establishes only
a single gRPC connection with the DRA plugin for all service calls
during the plugin lifecycle.
The test uses a custom listener to count accepted connections and
asserts that only one connection is used for NodePrepareResources,
NodeUnprepareResources, and NodeWatchResources calls.
2025-09-17 19:15:01 +03:00
Kubernetes Prow Robot
f945dc402b Merge pull request #134047 from pohly/dra-e2e-node-metric-flake
DRA E2E node: fix test cleanup
2025-09-14 19:08:08 -07:00
Patrick Ohly
8fed05c5b7 DRA E2E node: fix test cleanup
dd9917ddce fixed one test which did not wait for
pods to be deleted and then, depending on the timing, left ResourceClaims
prepared because the driver stopped before kubelet could call
NodeUnprepareResources.

But this is a more systematic issue also with other tests, so now the any test
which starts a DRA plugin automatically uses the same common cleanup code:
- delete pods in the test names
- wait for the driver to not have any active ResourceClaims
- stop the driver
2025-09-12 18:43:35 +02:00
Karthik Bhat
4e907fad15 Explicitly set TerminationGracePeriodSeconds for mirror pod 2025-09-12 15:16:31 +05:30
Kubernetes Prow Robot
2d9ffdfec1 Merge pull request #134006 from pacoxu/kubelet-config-e2e
node_e2e: fix kubelet configuration setup
2025-09-11 20:08:06 -07:00
Paco Xu
455a437674 node_e2e: fix kubelet configuration setup 2025-09-12 09:26:17 +08:00
Kubernetes Prow Robot
7d8551ad4e Merge pull request #133790 from Jpsassine/fix-leaky-resource-health-test
Fix flaky resource claim metrics test
2025-09-11 04:40:07 -07:00
Kubernetes Prow Robot
147143e348 Merge pull request #133955 from pacoxu/fix-kubelet-e2e
e2e_node kubelet configuration: merge feature gates and system-reserved items
2025-09-10 15:56:18 -07:00
Kubernetes Prow Robot
e9eef19379 Merge pull request #129240 from KevinTMtz/evict-terminated-pods-on-disk-pressure
E2e test for cleaning of terminated containers
2025-09-10 11:47:57 -07:00
John-Paul Sassine
dd9917ddce Fix flaky resource claim metrics test
The E2E node test "[DRA] Two resource Kubelet Plugins [Serial] must provide metrics" was failing flakily due to a race condition.

The preceding test, "should not add health status to Pod when feature gate is disabled," was leaking an in-use ResourceClaim. It deleted its pod but did not wait for the Kubelet to finish unprepared the resources, leaving the `dra_resource_claims_in_use` metric at a non-zero value.

This commit makes the cleanup process synchronous so now it  deletes the pod and explicitly waits for the `NodeUnprepareResources` gRPC call to complete making sure resources are released before the test finishes.

Additionally, I fixed  the cleanup logic in the `createHealthTestPodAndClaim` helper function to prevent a `DeviceClass` leak.
2025-09-10 18:21:35 +00:00
Paco Xu
1e3c3934cb e2e_node kubelet configuration: merge feature gates and system-reserved items 2025-09-09 15:19:36 +08:00
Kubernetes Prow Robot
90b03f1af0 Merge pull request #133910 from bitoku/fix-graceful-shutdown
Fix GracefulNodeShutdown perma failing test
2025-09-08 07:39:38 -07:00
Ayato Tokubi
5ed98e97e1 Remove getLocalNode to fix GracefulNodeShutdown e2e.
getLocalNode tried to get a ready node and fails if there's none.
The e2e test sends termination signal to kubelet and it's expected to have no ready nodes. Because of this, the e2e was permafailing.

Signed-off-by: Ayato Tokubi <atokubi@redhat.com>
2025-09-08 12:20:55 +00:00
Kubernetes Prow Robot
b508767369 Merge pull request #132655 from ylink-lfs/ci/httpd_removal
ci: remove httpd usage while using agnhost instead
2025-09-05 20:23:24 -07:00
Kubernetes Prow Robot
ef4add4509 Merge pull request #133356 from mayuka-c/issue-133175
Replace usage of deprecated ErrWaitTimeout with recommended method across all Pkgs
2025-09-05 06:43:34 -07:00
Kevin Torres
86e3ad233f Revert trapping TERM for podWithCommand 2025-09-04 18:46:54 +00:00
Kubernetes Prow Robot
4a79948217 Merge pull request #133473 from roycaihw/psi-cpu-pressure-test
PSI test: add a CPU limit of 500m to cpu-stress-pod
2025-09-03 14:03:15 -07:00
Kubernetes Prow Robot
5dff07fdf9 Merge pull request #133837 from saschagrunert/cni-plugins
Update CNI plugins to v1.8.0
2025-09-03 07:53:15 -07:00
Kubernetes Prow Robot
53fecc7748 Merge pull request #133720 from carlory/cleanup-SizeMemoryBackedVolumes
Drop SizeMemoryBackedVolumes after the feature GA-ed in 1.32
2025-09-02 15:33:13 -07:00
Sascha Grunert
f0be916f7a Update CNI plugins to v1.8.0
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2025-09-02 08:39:57 +02:00