-
Notifications
You must be signed in to change notification settings - Fork 3.8k
feat(helm): add HTTPRoute support for Gateway API v1 #19729
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Add full HTTPRoute support for both gateway and component-level routing. Features: - Gateway HTTPRoute for simple routing through loki-gateway - Main HTTPRoute for component-level routing (distributor, query-frontend, ruler, compactor) - Support for all deployment modes (SingleBinary, SimpleScalable, Distributed) - HTTPRoute filters (header manipulation, redirects, URL rewrites) - Multiple parentRefs support for multi-gateway configurations - CI and integration tests Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Aleksei Sviridkin <f@lex.la>
Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Aleksei Sviridkin <f@lex.la>
Add preInstallScript to install Gateway API v1.4.0 CRDs before deploying the chart to fix integration test failures. Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Aleksei Sviridkin <f@lex.la>
|
hi @lexfrei, mind sharing a bit more about what HTTPRoute is and what issue this PR is addressing? |
|
@trevorwhitney Thanks for taking a look! Regarding the missing issue: HTTPRoute is the official successor to Ingress - it's part of the Kubernetes Gateway API project, which graduated to GA (v1.0) in October 2023 and is now the recommended standard for ingress traffic management in Kubernetes. Why no issue?
Prior art: What this PR provides:
References:
Happy to create a retroactive issue/LID if the team prefers formal process documentation, but I felt this was more of a "parity feature" than something requiring extensive design discussion. |
|
Hey @lexfrei to have the same experience across all Grafana Charts, could you please use the following pattern for values, which is used at Grafana Chart as well? |
Refactor Gateway API configuration to follow the same pattern as Grafana chart: - Rename gateway.httproute -> gateway.route - Rename httproute -> route - Add apiVersion and kind fields for flexibility - Use matches/filters/additionalRules structure - Update templates: httproute-gateway.yaml -> route-gateway.yaml, httproute.yaml -> route.yaml - Update CI and integration tests accordingly - Regenerate documentation This aligns with the pattern used across Grafana Helm charts for consistency. Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Aleksei Sviridkin <f@lex.la>
|
@trevorwhitney Thanks for the feedback! I've refactored the implementation to align with the Grafana chart pattern:
The structure now follows the same pattern as in the Grafana chart. Is this close enough to the established pattern, or are there additional adjustments you'd like to see? |
What this PR does / why we need it:
This PR adds full HTTPRoute support (Gateway API v1) to the Loki Helm chart, providing a modern alternative to traditional Ingress resources for routing traffic to Loki components.
Features:
Which issue(s) this PR fixes:
N/A - New feature
Special notes for your reviewer:
Checklist
CONTRIBUTING.mdguide