Repository for the next iteration of composite service (e.g. Ingress) and load balancing APIs.
This is a patch release that includes small fixes, clarifications, and conformance tests as a follow up to the v0.7.0 release.
The v0.7.0 release focuses on refining and stabilizing existing APIs. This included a focus on both conformance tests and clarifying ambiguous parts of the API spec.
In addition to those broad focuses, 2 features are graduating to the standard channel:
There are a lot of interesting GEPs in the pipeline right now, but only some of these GEPs have made it to experimental status in time for v0.7.0. The GEPs highlighted below are both in an experimental state and are either entirely new (GEP-1748) or had significant new concepts introduced (GEP-713):
This GEP received a major update, splitting policy attachment into two categories "Direct" and "Inherited". The new "Direct" mode enables a simplified form of policy attachment for targeting a single resource (#1565, @youngnick).
A new GEP was introduced to define how Gateway API interacts with Multi-Cluster Services. At a high level, this states that ServiceImports have "Extended" support and can be used anywhere Services can throughout the API. There's a lot more nuance here, so for the full details, refer to the GEP. (#1843, @robscott)
gateway-exists-finalizer.gateway.networking.k8s.io
finalizer is no
longer required and is now just recommended. (#1917, @howardjohn)EnableAllSupportedFeatures
enables all
Gateway AND Mesh features (where previously that was just Gateway). (#1894,
@shaneutt)all-features
flag to enable all supported feature conformance tests.
(#1642, @gyohuangxin)We expect this to be our final release candidate before launching v0.7.0. This release candidate includes a variety of clarifications and conformance updates. The changelog below represents the changes since v0.7.0-rc1.
gateway-exists-finalizer.gateway.networking.k8s.io
finalizer is no
longer required and is now just recommended. (#1917, @howardjohn)EnableAllSupportedFeatures
enables all
Gateway AND Mesh features (where previously that was just Gateway). (#1894,
@shaneutt)all-features
flag to enable all supported feature conformance tests.
(#1642, @gyohuangxin)API versions: v1beta1
, v1alpha2
This is a patch release that predominantly includes updated conformance tests for implementations to implement.
For all major changes since the v0.5.x
release series, please see the
v0.6.0 release notes.
HTTPRouteInvalidCrossNamespaceParentRef
conformance test now checks for
the NotAllowedByListeners
reason on the HTTPRoute
's Accepted: false
condition to better indicate why the route was note accepted.
(#1714, @skriss)HTTPRoute
to cover the behavior of a
non-matching SectionName
similar to what was already present for
ListenerPort
.
(#1719, @zaunist)ObservedGeneration
has been improved to emit the `ObservedGenerations that are found for the
purpose of making it easier to debug test failures and be more verbose about
the objects in question.
(#1761, @briantkennedy)
(#1763, @briantkennedy)AttachedRoutes
testing to conformance tests.
(#1624, @ChaningHwang)API versions: v1beta1
, v1alpha2
This is a patch release that predominantly includes updated conformance tests for implementations to implement.
For all major changes since the v0.5.x
release series, please see the
v0.6.0 release notes.
net/http
default client in conformance test suite
(#1617, @howardjohn)Full Changelog: https://github.com/kubernetes-sigs/gateway-api/compare/v0.6.0...v0.6.1
API versions: v1beta1
, v1alpha2
v1beta1
, ReferencePolicy removedWith more implementations now supporting ReferenceGrant (and more conformance coverage of the resource), we've moved ReferenceGrant to v1beta1
in this release. Note that moving to beta also moves the object to the Standard channel (it was Experimental previously).
We've also removed the already-deprecated ReferencePolicy resource, so please move over to the shiny new ReferenceGrant, which has all the same features.
The GRPCRoute
resource has been introduced in order to simplify the routing of GRPC requests.
Its design is described in GEP-1016.
As it is a new resource, it is introduced in the experimental channel.
Thanks to @gnossen for pushing this ahead.
As described in GEP-1364, status conditions have been updated within the Gateway resource to make it more consistent with the rest of the API. These changes, along with some other status changes, are detailed below.
Gateway:
Accepted
and Programmed
conditions introduced.Scheduled
condition deprecated.Accepted
and Programmed
.Ready
.Gateway Listener:
Accepted
and Programmed
conditions introduced.Detached
condition deprecated.Accepted
, Programmed
, ResolvedRefs
, and Conflicted
.Ready
.All Resources:
Accepted
Condition now has a Pending
reason, which is the default until
the condition is updated by a controller.Route resources:
Accepted
Condition now has a NoMatchingParent
reason, to be set on routes
when no matching parent can be found.The purpose of these changes is to make the status flows more consistent across objects, and to provide a clear pattern for new objects as we evolve the API.
Note: This change will require updates for implementations to be able to pass conformance tests. Implementations may choose to publish both new and old conditions, or only new conditions.
Accepted
and deprecates Detached
Listener conditions and reasons (#1446, @mikemorris)Accepted
and deprecates Scheduled
Gateway conditions and reasons (#1447, @mikemorris)Pending
reason for use with all Accepted
conditions throughout the API (#1453, @youngnick)Programmed
Gateway and Listener conditions, moves Ready
to extended
conformance (#1499, @LCaparelli)RouteReasonNoMatchingParent
reason for Accepted
condition. (#1516, @pmalek)responseHeaderModifier
is added to .spec.rules.filters
, which
allows for modification of HTTP response headers (#1373, @aryan9600)RegularExpression
type selectors have been clarified to all be
ImplementationSpecific
conformance. (#1604, @youngnick)arm64
in addition to amd64
for our
validating webhook.
(#627, @wilsonwu & @Xunzhuo)v1alpha2
Go types are now aliases to their v1beta1
versions
(#1390, @howardjohn)Full Changelog: https://github.com/kubernetes-sigs/gateway-api/compare/v0.5.0...v0.6.0
We expect this to be our final release candidate before launching v0.6.0. This release candidate includes a variety of cleanup and documentation updates. The changelog below represents the changes since v0.6.0-rc1.
kubectl get gateways
. (#1602, @skriss)RegularExpression
type selectors have been clarified to all be
ImplementationSpecific
conformance. (#1604, @youngnick)Full Changelog: https://github.com/kubernetes-sigs/gateway-api/compare/v0.6.0-rc1...v0.6.0-rc2
v1beta1
, ReferencePolicy removedWith more implementations now supporting ReferenceGrant (and more conformance coverage of the resource), we've moved ReferenceGrant to v1beta1
in this release. Note that moving to beta also moves the object to the Standard channel (it was Experimental previously).
We've also removed the already-deprecated ReferencePolicy resource, so please move over to the shiny new ReferenceGrant, which has all the same features.
The GRPCRoute
resource has been introduced in order to simplify the routing of GRPC requests.
Its design is described in GEP-1016.
As it is a new resource, it is introduced in the experimental channel.
Thanks to @gnossen for pushing this ahead.
As described in GEP-1364, status conditions have been updated within the Gateway resource to make it more consistent with the rest of the API. These changes, along with some other status changes, are detailed below.
Gateway:
Accepted
and Programmed
conditions introduced.Scheduled
condition deprecated.Accepted
and Programmed
.Ready
.Gateway Listener:
Accepted
and Programmed
conditions introduced.Detached
condition deprecated.Accepted
, Programmed
, ResolvedRefs
, and Conflicted
.Ready
.All Resources:
Accepted
Condition now has a Pending
reason, which is the default until
the condition is updated by a controller.Route resources:
Accepted
Condition now has a NoMatchingParent
reason, to be set on routes
when no matching parent can be found.The purpose of these changes is to make the status flows more consistent across objects, and to provide a clear pattern for new objects as we evolve the API.
Note: This change will require updates for implementations to be able to pass conformance tests. Implementations may choose to publish both new and old conditions, or only new conditions.
Accepted
and deprecates Detached
Listener conditions and reasons (#1446, @mikemorris)Accepted
and deprecates Scheduled
Gateway conditions and reasons (#1447, @mikemorris)Pending
reason for use with all Accepted
conditions throughout the API (#1453, @youngnick)Programmed
Gateway and Listener conditions, moves Ready
to extended
conformance (#1499, @LCaparelli)RouteReasonNoMatchingParent
reason for Accepted
condition. (#1516, @pmalek)responseHeaderModifier
is added to .spec.rules.filters
, which
allows for modification of HTTP response headers (#1373, @aryan9600)v1alpha2
Go types are now aliases to their v1beta1
versions
(#1390, @howardjohn)utils
package to a new package named
translator
. (#1337, @carlisia)API versions: v1beta1, v1alpha2
This release includes a number of bug fixes and clarifications:
API versions: v1beta1, v1alpha2
This release includes a number of bug fixes and clarifications: