Repository navigation
test(e2e): end-to-end traversal test for the Kubernetes API TLSRoute #2478
Copy link
Copy link
Open
Labels
area/ciliumIssues or PRs related to Cilium (agent, operator, Gateway API, network policy, LB-IPAM)Issues or PRs related to Cilium (agent, operator, Gateway API, network policy, LB-IPAM)area/testingIssues or PRs related to testing (e2e, bats, unit tests)Issues or PRs related to testing (e2e, bats, unit tests)kind/featureCategorizes issue or PR as related to a new featureCategorizes issue or PR as related to a new featurelifecycle/frozenIndicates that an issue or PR should not be auto-closed due to stalenessIndicates that an issue or PR should not be auto-closed due to stalenesspriority/backlogGeneral backlog priority. Lower than priority/important-longtermGeneral backlog priority. Lower than priority/important-longtermtriage/acceptedIndicates an issue is ready to be actively worked onIndicates an issue is ready to be actively worked on
Description
Context
#2470 ships TLSRoute for three TLS-passthrough services — Kubernetes API, vm-exportproxy, cdi-uploadproxy — on dedicated Passthrough listeners of the tenant Gateway. Current e2e coverage in hack/e2e-apps/gateway.bats:
- GatewayClass
ciliumis Accepted. - A minimal Gateway reconciles to Programmed.
cozystack-gateway-hostname-policyrejects a foreign-hostname Gateway.- An HTTPRoute on a same-namespace Gateway reaches Accepted.
- Three VAP negative paths (attached-namespaces, tenant-host, namespace-host-label).
Gap
Nothing actually opens a TLS connection through the tls-api / tls-vm-exportproxy / tls-cdi-uploadproxy listeners end-to-end. Raised on the #2470 review as well.
Proposed work
- Generate a self-signed cert at install time and install it as the tenant Gateway's TLS secret.
- Write an
/etc/hostsentry (or equivalent) in the sandbox soapi.<apex>,vm-exportproxy.<apex>, andcdi-uploadproxy.<apex>resolve to the Gateway LB IP. - Exercise each route — for the Kubernetes API listener,
kubectl --server=https://api.<apex> --insecure-skip-tls-verify versionshould succeed; for vm-exportproxy and cdi-uploadproxy, a curl to the health path of each backend.
Requires cert + DNS plumbing the e2e sandbox does not currently ship, which is why the initial PR only covered the admission-time checks.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
area/ciliumIssues or PRs related to Cilium (agent, operator, Gateway API, network policy, LB-IPAM)Issues or PRs related to Cilium (agent, operator, Gateway API, network policy, LB-IPAM)area/testingIssues or PRs related to testing (e2e, bats, unit tests)Issues or PRs related to testing (e2e, bats, unit tests)kind/featureCategorizes issue or PR as related to a new featureCategorizes issue or PR as related to a new featurelifecycle/frozenIndicates that an issue or PR should not be auto-closed due to stalenessIndicates that an issue or PR should not be auto-closed due to stalenesspriority/backlogGeneral backlog priority. Lower than priority/important-longtermGeneral backlog priority. Lower than priority/important-longtermtriage/acceptedIndicates an issue is ready to be actively worked onIndicates an issue is ready to be actively worked on
Activity
dosubot commentedon Jul 24, 2026
Hi, Aleksei Sviridkin (@lexfrei). I'm Dosu, and I'm helping the cozystack team manage their backlog and am marking this issue as stale.
Recap
tls-api,tls-vm-exportproxy, andtls-cdi-uploadproxy.Next Steps
Thanks for your understanding and contribution.