Sitelet https://github.com/kubernetes/kops/pull/18515
Skip to content

tests/e2e: skip implement-NodePort ETP=Local test on more CNIs - #18515

Merged
kubernetes-prow[bot] merged 1 commit into
kubernetes:masterfrom
rifelpet:skip-etp-local-implement-nodeport
Jun 27, 2026
Merged

kubernetes-prow[bot] merged 1 commit into
kubernetes:masterfrom
rifelpet:skip-etp-local-implement-nodeport

Conversation

@rifelpet

@rifelpet rifelpet commented Jun 27, 2026 •

Copy link
Copy Markdown
Member

followup to #18509

What

Follow-up to the recently merged change that moved the Services should implement NodePort and HealthCheckNodePort correctly when ExternalTrafficPolicy changes skip into the Cilium block.

Inspecting the latest e2e-kops-aws-cni-* periodic runs shows that gating it to Cilium alone was too narrow — the test also fails on flannel, kopeio, and kube-router, and it is the sole failure in each of those three jobs' latest runs (i.e. it turned them red):

CNI this test symptom example failing run
amazon-vpc, calico, kindnet ✅ PASS source IP preserved —
cilium ⏭️ skipped — —
flannel ❌ FAIL client IP SNATed to pod IP (100.96.3.0 != node 172.20.200.197) e2e-kops-aws-cni-flannel #2070646604699799552
kopeio ❌ FAIL client IP SNATed to pod IP (100.96.2.0 != node 172.20.113.68) e2e-kops-aws-cni-kopeio #2070571105239699456
kube-router ❌ FAIL request to local NodePort times out (context deadline exceeded) e2e-kops-aws-cni-kuberouter #2070651133289828352

All three share the same root cause: externalTrafficPolicy=Local source-IP preservation is not implemented (kube-router fails one step earlier with a connectivity timeout).

Change

Move the skip out of the Cilium-only block into a condition covering cilium, flannel, kopeio, and kube-router. amazon-vpc, calico, and kindnet preserve the source IP and keep running the test.

The sibling externalTrafficPolicy=Local for type=NodePort test passes on every non-Cilium CNI, so it stays gated to Cilium only.

The "Services should implement NodePort and HealthCheckNodePort correctly
when ExternalTrafficPolicy changes" test was previously gated to Cilium
only, but the e2e-kops-aws-cni-* periodic jobs show it also fails on
flannel, kopeio and kube-router: the client source IP is SNATed to a pod IP
instead of being preserved (kube-router instead times out reaching the local
endpoint). It is the sole failure in those three jobs' latest runs.

Move it out of the Cilium block into a condition covering cilium, flannel,
kopeio and kube-router. amazon-vpc, calico and kindnet preserve the source
IP and continue running the test.

The sibling "externalTrafficPolicy=Local for type=NodePort" test passes on
every non-Cilium CNI, so it stays gated to Cilium only.
@kubernetes-prow

Copy link
Copy Markdown
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@kubernetes-prow kubernetes-prow Bot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Jun 27, 2026
@kubernetes-prow
kubernetes-prow Bot requested review from hakman and zetaab June 27, 2026 01:30
@rifelpet
rifelpet marked this pull request as ready for review June 27, 2026 01:31
@kubernetes-prow kubernetes-prow Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 27, 2026
@kubernetes-prow
kubernetes-prow Bot requested a review from olemarkus June 27, 2026 01:31
@kubernetes-prow kubernetes-prow Bot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jun 27, 2026
@kubernetes-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: hakman

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubernetes-prow kubernetes-prow Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 27, 2026
@kubernetes-prow
kubernetes-prow Bot merged commit 86c6410 into kubernetes:master Jun 27, 2026
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants