Releases: kubernetes-sigs/gateway-api
v0.2.0
This release brings in minor enhancements, a few bug fixes and tons of documentation updates.
API Version: v1alpha1
API changes
Service APIs has been renamed to Gateway API.
#536.
GatewayClass
- The default status condition of GatewayClass resource is now
Admitted:false
instead ofInvalidParameters:Unknown
.
#471. GatewayClass.spec.parametersRef
now has an optionalnamespace
field to
refer to a namespace-scoped resource in addition to cluster-scoped resource.
#543.
Gateway
spec.listeners[].tls.mode
now defaults toTerminate
.
#518.- Empty
hostname
in a listener matches all request.
#525.
HTTPRoute
- New
set
property has been introduced forHTTPRequestHeader
Filter. Headers
specified underset
are overriden instead of added.
#475.
Misc
- Maximum limit for
forwardTo
has been increased from4
to16
for all
route types.
#493. - Various changes have been made in the Kubernetes and Go API to align with
upstream Kubernetes API conventions. Some of the fields have been changed to
pointers in the Go API for this reason.
#538.
Documentation
There are minor improvements to docs all around.
New guides, clarifications and various typos have been fixed.
v1alpha1
This is the v1alpha1 release of Service APIs. We may still make tiny incremental updates to this API. Any breaking changes will be reserved for a potential v1alpha2 release.
API changes since v0.1.0-rc2
GatewayClass
- CRD now includes
gc
short name. - Change the standard condition for GatewayClass to
Admitted
, withInvalidParameters
as a sample reason for it to be false.
Gateway
- CRD now includes
gtw
short name. - The
DroppedRoutes
condition has been renamed toDegradedRoutes
. ListenerStatus
now includesProtocol
andHostname
to uniquely link the status to each listener.
Routes
- HTTPRoute clarifications:
- Header name matching must be case-insenstive.
- Match tiebreaking semantics have been outlined in detail.
- TCPRoute, TLSRoute, and UDPRoute:
- At least 1 ForwardTo must be specified in each rule.
- Clarification that if no matches are specified, all requests should match a rule.
- TCPRoute and UDPRoute: Validation has been added to ensure that 1-16 rules are specified, matching other route types.
- TLSRoute: SNIs are now optional in matches. If no SNI or extensionRef are specified, all requests match.
BackendPolicy
- CRD now includes
bp
short name. - A new
networking.x-k8s.io/app-protocol
annotation can be used to specify AppProtocol on Services when the AppProtocol field is unavailable.
v1alpha1: Release Candidate 2
This is our second v1alpha1 release candidate. The working group expects that this release candidate is quite close to the final v1alpha API and does not plan to make major API changes. However, minor (possibly breaking) API changes such as renaming fields are still possible.
This release candidate is suitable for implementors, but the working group does not recommend shipping products based on a release candidate API due to the possibility of incompatible changes prior to the final release.
API changes since v0.1.0-rc1
GatewayClass
- A recommendation to set a
gateway-exists-finalizer.networking.x-k8s.io
finalizer on GatewayClass has been added. allowedGatewayNamespaces
has been removed from GatewayClass in favor of
implementations with policy agents like Gatekeeper.
Gateway
- Fields in
listeners.routes
have been renamed:routes.routeSelector
->routes.selector
routes.routeNamespaces
->routes.namespaces
clientCertificateRef
has been removed from BackendPolicy.- In Listeners,
routes.namespaces
now defaults to{from: "Same"}
. - In Listeners, support has been added for specifying custom, domain prefixed
protocols. - In Listeners,
hostname
now closely matches Route hostname matching with wildcard
support. - A new
UnsupportedAddress
condition has been added to Listeners to indicate
that a requested address is not supported. - Clarification has been added to note that listeners may be merged in certain
instances.
Routes
- HeaderMatchType now includes a RegularExpression option.
- Minimum weight has been decreased from 1 to 0.
- Port is now required on all Routes.
- On HTTPRoute, filters have been renamed:
ModifyRequestHeader
->RequestHeaderModifier
MirrorRequest
->RequestMirror
Custom
->ExtensionRef
- TLSRoute can now specify as many as 16 SNIs instead of 10.
- Limiting the number of Gateways that may be stored in RouteGatewayStatus to
100. - Support level of filters defined in ForwardTo has been clarified.
- Max weight has been increased to 1 million.
v1alpha1: Release Candidate 1
This is our initial v1alpha1 release candidate. The working group expects that this release candidate is quite close to the final v1alpha
API and does not plan to make major API changes. However, minor (possibly breaking) API changes such as renaming fields are still possible.
This release candidate is suitable for implementors, but the working group does not recommend shipping products based on a release candidate API due to the possibility of incompatible changes prior to the final release.
Our progress towards a final v1alpha1 release is being tracked in https://github.com/kubernetes-sigs/service-apis/milestone/1.