kubernetes/test/e2e_node
Rodrigo Campos a138a4825e tests: Wait for pod to be removed on kubelet restart with idsPerPod
The test starts the kubelet with a non-default setting for idsPerPod,
runs a pod, deletes it, and then restarts the kubelet.

The issue is that the kubelet guarantees that no two pods userns
mappings overlap (for security reasons). But we are not waiting for the
pod to be removed, the deleteSync() call only waits for the API server
to remove the pod.

So, the pod is on disk (and maybe even running!) when we restart the
kubelet. As the previous configuration is incompatible with the new one
after restart if pods are running, the kubelet failing is the right
thing. We should just wait for the pod to be deleted from the kubelet
too, before restarting it with an incompatible configuration.

So, this commit just changes the pod deleteion (before done in
e2eoutput.TestContainerOutput() just waiting for the API server) to wait
for the kubelet to delete the pod.

Signed-off-by: Rodrigo Campos <rodrigo@amutable.com>
2026-04-09 11:45:22 +02:00
..
builder Ensure we switch to k8s root directory for dockerized builds during e2e-node ci job 2025-02-27 10:05:45 -05:00
conformance stop using deprecated klog flags 2022-09-04 21:02:43 +02:00
criproxy cri-api: Add streaming RPCs for CRI list operations 2026-03-18 16:32:49 +00:00
environment Merge pull request #109753 from matthyx/109577 2022-05-13 07:33:49 -07:00
jenkins Remove remants of broken stuff - nvidia/autoscaling 2024-09-23 13:17:00 +00:00
kubeletconfig use PollUntilContextTimeout to replace PollImmediateWithContext in test 2023-10-19 22:50:21 +08:00
perf/workloads Switch node perf tests from TensorFlow to PyTorch Wide-Deep 2026-01-22 12:02:58 -05:00
perftype hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
plugins/gcp-credential-provider add e2e test with the gcp-credential-provider test plugin 2025-03-11 20:36:36 -07:00
remote Update CNI plugins to v1.9.1 2026-04-01 14:06:34 +05:30
runner e2e node: support running the test binary under a debugger 2024-04-16 11:46:28 +02:00
services migrate pkg/kubelet/kubeletconfig to contextual logging 2025-07-17 10:16:03 +03:00
system hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
testdeviceplugin Convert k8s.io/kubelet/pkg/apis/deviceplugin from gogo to protoc 2025-07-21 10:04:01 +02:00
testing-manifests e2e: node: remove kubevirt device plugin 2023-02-22 14:04:22 +01:00
.import-restrictions e2e: dra: move gomega matchers to dedicated package 2025-05-15 20:55:17 +03:00
apparmor_test.go Move dump package from apimachinery to k8s.io/utils 2026-02-12 07:34:19 -05:00
benchmark_util.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
cgroup_driver_from_cri_test.go kubelet: defer the configurations flags (and the related fallback behavior) deprecation removal timeline from 1.36 to 1.37 to align with containerd v1.7 support 2026-02-09 10:39:17 +08:00
checkpoint_container.go deprecate nodefeature for feature labels 2025-01-20 17:02:59 -05:00
container_lifecycle_pod_construction.go Merge pull request #138006 from tallclair/push-kooxxktxovkr 2026-03-25 02:18:16 +05:30
container_lifecycle_test.go Fix restartable init container startup race 2026-03-23 19:58:38 +00:00
container_log_rotation_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
container_manager_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
container_metrics_test.go Merge pull request #134981 from haircommander/drop-cpu-load 2026-02-11 03:00:01 +05:30
container_restart_test.go Fix container_restart_test AfterEach failing when CRI Proxy is undefined 2026-01-23 19:59:22 -05:00
cpu_manager_metrics_test.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00
cpu_manager_test.go set InPlacePodLevelResourcesVerticalScaling to false if PodLevelResources is set to false 2026-03-24 16:57:46 +08:00
criproxy_test.go cri-api: Add streaming RPCs for CRI list operations 2026-03-18 16:32:49 +00:00
critical_pod_test.go E2E tests for pod level resources Kubelet Preemption 2025-07-24 17:08:13 +00:00
deleted_pods_test.go Make e2e node tests more resiliant by ensuring the SIGTERM trap is registered 2024-04-19 09:05:36 +02:00
density_test.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
device_manager_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
device_plugin_failures_pod_status_test.go test: Standardize labels for ResourceHealthStatus e2e tests 2025-08-07 21:40:57 +00:00
device_plugin_failures_test.go Convert k8s.io/kubelet/pkg/apis/deviceplugin from gogo to protoc 2025-07-21 10:04:01 +02:00
device_plugin_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
doc.go remove import doc comments 2024-12-02 16:59:34 +01:00
dra_test.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00
e2e_node_suite_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
endpoints_test.go Require configz to be external versioned runtime.Object 2026-03-06 18:41:11 +00:00
eviction_test.go Merge pull request #129240 from KevinTMtz/evict-terminated-pods-on-disk-pressure 2025-09-10 11:47:57 -07:00
framework.go e2e: enhance SIGDescribe 2023-10-10 18:15:49 +02:00
garbage_collector_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
gubernator.sh fix test/e2e_node/gubernator.sh shellcheck failures 2019-06-23 17:01:54 -07:00
hugepages_test.go E2E: remove unnecessary trailing spaces in test names 2026-01-07 12:05:43 +01:00
image_credential_pulls.go Merge pull request #137629 from stlaz/ensure-secret-images-allowlist-fix 2026-03-19 05:42:36 +05:30
image_gc_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
image_id_test.go Move dump package from apimachinery to k8s.io/utils 2026-02-12 07:34:19 -05:00
image_list.go Merge pull request #137248 from SergeyKanzhelev/propagate-context-cri-client 2026-03-14 00:41:36 +05:30
image_pull_test.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
image_volume.go Merge pull request #137248 from SergeyKanzhelev/propagate-context-cri-client 2026-03-14 00:41:36 +05:30
kubelet_config_dir_test.go node_e2e: fix kubelet configuration setup 2025-09-12 09:26:17 +08:00
kubelet_server_tls_test.go Introduce a kubelet-server configuration that allows reloading ClientCA in TLSConfig 2026-03-05 02:04:08 +00:00
kubelet_tls_test.go Fix kubelet certificate reload when connecting by IP 2025-11-25 20:44:19 +01:00
lock_contention_linux_test.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
log_path_test.go e2e: use framework labels 2023-11-01 15:17:34 +01:00
memory_manager_metrics_test.go e2e_node: wait for pod drain before asserting zero pods in Memory Manager Metrics 2026-03-28 15:27:25 -04:00
memory_manager_test.go set InPlacePodLevelResourcesVerticalScaling to false if PodLevelResources is set to false 2026-03-24 16:57:46 +08:00
memory_qos_test.go Remove reconcilePodMemoryProtection that resets pod cgroup values on systemd 2026-03-19 07:53:34 -04:00
mirror_pod_grace_period_test.go Merge pull request #137248 from SergeyKanzhelev/propagate-context-cri-client 2026-03-14 00:41:36 +05:30
mirror_pod_test.go E2E: remove unnecessary trailing spaces in test names 2026-01-07 12:05:43 +01:00
mount_rro_linux_test.go Label unlabeled e2e node tests 2026-03-12 09:02:24 +01:00
node_container_manager_test.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
node_perf_test.go Fix pod delete issues in podresize tests 2025-01-21 07:25:14 +01:00
node_problem_detector_linux.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00
node_shutdown_linux_test.go Fix vet error 2026-03-05 18:11:02 -05:00
numa_alignment.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00
oomkiller_linux_test.go update to latest cadvisor @ v0.52.0 2025-03-05 06:36:39 -05:00
os_label_rename_test.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
OWNERS Add ffromani as approver for kubelet resource managers and their tests 2025-01-14 13:18:40 +01:00
pids_test.go wait for pod to be ready before continuing with the test 2024-07-22 05:26:59 +00:00
pod_conditions_criproxy_linux_test.go add e2e tests verifying PodReadyToStartContainers condition set using criProxy to inject delay time 2026-03-16 10:14:02 +05:30
pod_conditions_test.go PodReadyToStartContainersCondition: refactor test to verify same pod unblocks when volume is created 2026-03-17 22:24:56 +05:30
pod_host_ips.go Label unlabeled e2e node tests 2026-03-12 09:02:24 +01:00
pod_hostnamefqdn_test.go test: update code to use GlibcDnsTesting image 2026-01-22 08:39:46 -05:00
pod_ips.go Label unlabeled e2e node tests 2026-03-12 09:02:24 +01:00
pod_status_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
podresources_test.go remove featuregate in e2e_node test 2026-03-11 11:28:24 -07:00
pods_api_test.go ci fixes 2026-03-18 23:07:37 +00:00
pods_container_manager_test.go e2e: use framework labels 2023-11-01 15:17:34 +01:00
pods_lifecycle_termination_test.go e2e: use framework labels 2023-11-01 15:17:34 +01:00
probe_stress_test.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00
proc_mount_test.go e2e_node: update proc mount test to correctly handle baseline PSA 2026-01-07 15:59:26 -05:00
quota_lsci_test.go e2e_node: update proc mount test to correctly handle baseline PSA 2026-01-07 15:59:26 -05:00
README.md Removed broken link to Analytics 2020-08-13 16:03:37 -04:00
resource_collector.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00
resource_metrics_test.go Remove dependency prometheus from test/e2e_node resource metric test 2026-02-28 00:01:00 +08:00
resource_usage_test.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
restart_all_containers_test.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00
restart_test.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00
runtime_conformance_test.go node e2e: add tests for Ensure Secret Image Pulls default policy 2025-11-11 11:15:53 -05:00
runtimeclass_test.go Label unlabeled e2e node tests 2026-03-12 09:02:24 +01:00
seccompdefault_test.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
security_context_test.go deprecate nodefeature for feature labels 2025-01-20 17:02:59 -05:00
split_disk_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
standalone_test.go fix mirror pod starttime failing message 2026-03-18 10:44:35 +08:00
static_pod_test.go test: fix flaky static pod tests by asserting on termination message and container ID instead of StartTime 2026-03-19 16:45:14 +00:00
summary_test.go add context to CRI API client and contextual logging per-call 2026-03-07 08:07:10 +00:00
swap_test.go disable in-place vertical pod scaling for non-restartable swappable containers 2025-03-20 20:43:18 +00:00
system_node_critical_test.go deprecate nodefeature for feature labels 2025-01-20 17:02:59 -05:00
terminate_pods_test.go Label unlabeled e2e node tests 2026-03-12 09:02:24 +01:00
topology_manager_metrics_test.go e2e: node: rewrite more compatibility tests 2025-05-09 11:07:04 +02:00
topology_manager_test.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00
unknown_pods_test.go e2e_node: refactor stopping and restarting kubelet 2024-11-06 11:34:48 +02:00
user_namespaces_test.go tests: Wait for pod to be removed on kubelet restart with idsPerPod 2026-04-09 11:45:22 +02:00
util.go Fix user namespace test cleanup race 2026-03-23 23:22:44 +00:00
util_criproxy_linux.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
util_kubeletconfig.go Fix user namespace test cleanup race 2026-03-23 23:22:44 +00:00
util_machineinfo_linux.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
util_machineinfo_unsupported.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
util_sriov.go Fix Go vet errors for master golang 2024-09-20 12:36:38 +05:30
util_sriov_linux.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
util_sriov_unsupported.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
util_xfs_linux.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
util_xfs_unsupported.go build: remove deprecated '// +build' tag 2025-12-18 12:16:21 +01:00
volume_manager_test.go Lint: Use modernize/rangeint in test/{e2e,e2e_node,images,soak} 2026-03-07 10:17:31 +01:00