Skip to content

Releases: kubernetes-sigs/gateway-api

v0.2.0

16 Feb 22:10
af68a62
Compare
Choose a tag to compare

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 of InvalidParameters:Unknown.
    #471.
  • GatewayClass.spec.parametersRef now has an optional namespace field to
    refer to a namespace-scoped resource in addition to cluster-scoped resource.
    #543.

Gateway

  • spec.listeners[].tls.mode now defaults to Terminate.
    #518.
  • Empty hostname in a listener matches all request.
    #525.

HTTPRoute

  • New set property has been introduced for HTTPRequestHeader Filter. Headers
    specified under set are overriden instead of added.
    #475.

Misc

  • Maximum limit for forwardTo has been increased from 4 to 16 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

18 Nov 23:39
3015e30
Compare
Choose a tag to compare

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, with InvalidParameters as a sample reason for it to be false.

Gateway

  • CRD now includes gtw short name.
  • The DroppedRoutes condition has been renamed to DegradedRoutes.
  • ListenerStatus now includes Protocol and Hostname 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

03 Nov 00:07
e5a4c11
Compare
Choose a tag to compare
Pre-release

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

07 Oct 23:59
fd5ffd1
Compare
Choose a tag to compare
Pre-release

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.