Summary
Add support for generating a Gateway API HTTPRoute resource as an alternative to the existing Ingress resource in the Connect Helm chart.
Use cases
The Kubernetes Gateway API is the successor to the Ingress API and has been GA since Kubernetes 1.26. Many clusters are migrating from Ingress controllers to Gateway API implementations (e.g., Envoy Gateway, Istio, Cilium, Traefik). Users running these environments currently cannot use the chart's built-in ingress support and must manage HTTPRoute resources outside of the chart, which defeats the purpose of a Helm-managed deployment.
Proposed solution
Add a new connect.httpRoute values section (parallel to connect.ingress) that generates a gateway.networking.k8s.io/v1 HTTPRoute resource. Key design points:
- Mutually exclusive with
connect.ingress — Helm fails with a clear error if both are enabled.
parentRefs is required — references the user's existing Gateway resource (replaces the role of ingressClassName). Helm fails if enabled without any parentRefs.
- Auto-generates a default rule routing all traffic (
PathPrefix: /) to the Connect service on the correct port (TLS-aware), with an option to override via connect.httpRoute.rules.
- No TLS block on the HTTPRoute — TLS termination is configured on the Gateway resource per Gateway API's separation of concerns.
- Supports
hostnames, labels, and annotations.
I have a working implementation ready to submit as a PR.
Is there a workaround to accomplish this today?
Users can manually create an HTTPRoute resource outside of the Helm chart, but this means the routing configuration is not managed alongside the rest of the Connect deployment, making upgrades and rollbacks more error-prone.
References & Prior Work
Summary
Add support for generating a Gateway API
HTTPRouteresource as an alternative to the existingIngressresource in the Connect Helm chart.Use cases
The Kubernetes Gateway API is the successor to the Ingress API and has been GA since Kubernetes 1.26. Many clusters are migrating from Ingress controllers to Gateway API implementations (e.g., Envoy Gateway, Istio, Cilium, Traefik). Users running these environments currently cannot use the chart's built-in ingress support and must manage HTTPRoute resources outside of the chart, which defeats the purpose of a Helm-managed deployment.
Proposed solution
Add a new
connect.httpRoutevalues section (parallel toconnect.ingress) that generates agateway.networking.k8s.io/v1HTTPRouteresource. Key design points:connect.ingress— Helm fails with a clear error if both are enabled.parentRefsis required — references the user's existing Gateway resource (replaces the role ofingressClassName). Helm fails if enabled without anyparentRefs.PathPrefix: /) to the Connect service on the correct port (TLS-aware), with an option to override viaconnect.httpRoute.rules.hostnames,labels, andannotations.I have a working implementation ready to submit as a PR.
Is there a workaround to accomplish this today?
Users can manually create an HTTPRoute resource outside of the Helm chart, but this means the routing configuration is not managed alongside the rest of the Connect deployment, making upgrades and rollbacks more error-prone.
References & Prior Work