Skip to content

Add HTTPRoute support for exposed services#664

Open
Bafbi wants to merge 2 commits intoInseeFrLab:mainfrom
Bafbi:feat/httproute-gateway-api
Open

Add HTTPRoute support for exposed services#664
Bafbi wants to merge 2 commits intoInseeFrLab:mainfrom
Bafbi:feat/httproute-gateway-api

Conversation

@Bafbi
Copy link

@Bafbi Bafbi commented Mar 13, 2026

This pull request adds support for Kubernetes Gateway API HTTPRoute as a new option for exposing services in Onyxia, alongside existing options like Ingress, Route, and Istio. The changes include updates to configuration, schema, service URL resolution logic, and tests to ensure correct behavior for HTTPRoute resources.

link to that issue on main repo: #InseeFrLab/onyxia#1062

HTTPRoute support for service exposure:

  • Added httpRoute configuration option to region definitions and updated documentation to describe its usage and requirements, including how parent references and hostnames are handled. [1] [2] [3] [4] [5]
  • Introduced a new JSON schema for HTTPRoute parameters, allowing for configuration of enabled state, hostnames, and parent references in service charts.

Service URL resolution enhancements:

  • Updated ServiceUrlResolver to detect and process HTTPRoute resources when enabled, extracting URLs from valid hostnames and paths, and filtering out routes with header/query/method matches or missing hostnames. [1] [2] [3]

Testing improvements:

  • Added new test cases and manifests to verify correct URL extraction for HTTPRoute resources, including edge cases like missing hostnames and header matches. [1] [2] [3] [4] [5] [6] [7] [8]

These changes collectively enable Onyxia to support modern Kubernetes Gateway API HTTPRoute for service exposure, providing greater flexibility and compatibility with evolving cluster ingress standards.

@sonarqubecloud
Copy link

@olevitt
Copy link
Contributor

olevitt commented Mar 13, 2026

😍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants