Available on crate feature
gateway-api only.Expand description
The pure step of the controller: a Snapshot of the cluster in, the
configuration rws serves (GatewayConfig) and the status every object
should have (Desired) out. No I/O, so the Gateway API’s acceptance
rules — which routes attach to which listeners, which references resolve,
which conditions and reasons are reported — are unit-tested here.
Structs§
- Client
Ca - The CAs a TLS-terminating listener verifies client certificates with.
- Desired
- The status each object should have; written only where it differs.
- Gateway
Config - What the data plane serves.
- Listener
Config - One accepted listener, the container port it’s served on, and the routes attached to it. Only listeners whose Gateway’s Service already maps their port are served, so every replica agrees on the port.
- Settings
- What translation needs besides the cluster.
- Snapshot
- Everything the controller watches, as last seen.
Constants§
- GATEWAY_
NAME_ LABEL - The label rws puts on the Service it creates for a Gateway (the name the
Gateway API recommends), next to
MANAGED_BY. - MANAGED_
BY app.kubernetes.io/managed-byon everything the controller creates.- SUPPORTED_
FEATURES - The features rws reports on its GatewayClasses (names as in the suite’s
pkg/featuresat Gateway API v1.6.3; sorted). Grows with each phase;FEATURESin.github/workflows/gateway-api.ymlmust match.
Functions§
- gateway_
addresses - A Gateway’s addresses: its Service’s load-balancer ingress.
- translate