Expand description
Kubernetes Gateway API translator (DW-064).
Translates Gateway API v1 resources (Gateway, HTTPRoute, GatewayClass)
into dwara’s config model. This is the core translation layer; the
kube-rs controller wiring (watching the API server via informers) lives
in controller and the Ingress translator in ingress.
§Gateway API v1
The Gateway API v1 standard channel (v1.5) includes:
GatewayClass: the kind of Gateway (dwara is a controller).Gateway: a listener configuration (ports, TLS, hostname).HTTPRoute: HTTP routing rules (matches, filters, backends).
§Translation
The translator maps:
Gateway->Listener(one per Gateway listener).HTTPRoute->Route(one per HTTPRoute rule match; a rule with multiple matches expands to one dwara route per match, since dwara routes carry a single match).HTTPRoutebackendRefs ->Service+Upstream+Endpoint.HTTPRoutefilters -> dwara route actions/transforms:RequestRedirect->RouteAction::Redirect.RequestHeaderModifier->Transforms.request.headers.ResponseHeaderModifier->Transforms.response.headers.URLRewrite->RouteAction::Proxy.rewrite(hostname/path).- Unsupported filters -> a warning (never silently dropped).
§Feature gate
None: the module compiles into every build (no k8s cargo
feature).
Modules§
- controller
- Kubernetes Gateway API controller (DW-064).
- ingress
- Kubernetes Ingress / IngressClass translator (DW-064).
Structs§
- Frontend
Validation - Frontend TLS validation (for Reencrypt mode).
- Gateway
- A Gateway resource.
- Gateway
Class - A GatewayClass resource.
- Gateway
Class Spec - GatewayClass spec.
- Gateway
Listener - A Gateway listener.
- Gateway
Spec - Gateway spec.
- Http
Backend Ref - An HTTP backend reference.
- Http
Header Filter - A header name/value pair for header modifier filters.
- Http
Header Match - An HTTP header match.
- Http
Path Match - An HTTP path match.
- Http
Query Param Match - An HTTP query parameter match.
- Http
Route - An HTTPRoute resource.
- Http
Route Match - An HTTPRoute match.
- Http
Route Rule - An HTTPRoute rule.
- Http
Route Spec - HTTPRoute spec.
- Listener
TlsConfig - Listener TLS configuration.
- Object
Meta - Kubernetes object metadata (subset).
- Parent
Reference - A parent reference (which Gateway this route attaches to).
- Secret
Object Reference - A reference to a Kubernetes Secret.
- Translation
Result - The translation result: a dwara Gateway config.
Enums§
- Http
Route Filter - An HTTPRoute filter (standard-channel subset).
- UrlRewrite
Path - The path rewrite type for URLRewrite filters.
Constants§
- CONTROLLER_
NAME - The dwara controller name for GatewayClass filtering.
Functions§
- endpoint_
key - Build the endpoint key for a K8s Service + port.
- skipped_
features - The list of standard-channel features the translator does NOT yet support (reported as skipped in the conformance report).
- supported_
features - The list of standard-channel conformance features the translator supports. Used by the conformance report generator.
- translate
- Translate Gateway API resources into a dwara Gateway config.