v0.6.0
API versions: v1beta1
, v1alpha2
Major Changes
ReferenceGrant moves to v1beta1
, ReferencePolicy removed
With 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.
- Promotes ReferenceGrant to the v1beta1 API and the standard release channel
(#1455, @nathancoleman) - ReferencePolicy has been removed from the API in favor of ReferenceGrant.
(#1406, @robscott)
Introduce GRPCRoute
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.
Status updates
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:
- New
Accepted
andProgrammed
conditions introduced. Scheduled
condition deprecated.- Core Conditions now
Accepted
andProgrammed
. - Moves to Extended:
Ready
.
Gateway Listener:
- New
Accepted
andProgrammed
conditions introduced. Detached
condition deprecated.- Core Conditions now
Accepted
,Programmed
,ResolvedRefs
, andConflicted
. - Moves to Extended:
Ready
.
All Resources:
- The
Accepted
Condition now has aPending
reason, which is the default until
the condition is updated by a controller.
Route resources:
- The
Accepted
Condition now has aNoMatchingParent
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.
- Adds
Accepted
and deprecatesDetached
Listener conditions and reasons (#1446, @mikemorris) - Adds
Accepted
and deprecatesScheduled
Gateway conditions and reasons (#1447, @mikemorris) - Adds
Pending
reason for use with allAccepted
conditions throughout the API (#1453, @youngnick) - Adds
Programmed
Gateway and Listener conditions, movesReady
to extended
conformance (#1499, @LCaparelli) - Add
RouteReasonNoMatchingParent
reason forAccepted
condition. (#1516, @pmalek)
Other Changes by type
Deprecations
- GatewayClass, Gateway, and HTTPRoute are now only supported with the v1beta1
version of the API. The v1alpha2 API versions of these resources will be fully
removed in a future release. Additionally, v1alpha2 is marked as deprecated
everywhere. (#1348 and #1405, @robscott)
API Changes
- A new field
responseHeaderModifier
is added to.spec.rules.filters
, which
allows for modification of HTTP response headers (#1373, @aryan9600) - Display the Programmed condition instead of the Ready condition in the output
- HTTPRoute: Validating webhook now ensures that Exact and Prefix path match
values can now only include valid path values per RFC-3986. (RegularExpression
path matches are not affected by this change). (#1599, @robscott) RegularExpression
type selectors have been clarified to all be
ImplementationSpecific
conformance. (#1604, @youngnick)
Documentation
- Clarify that BackendObjectReference's Port field specifies a service port, not
a target port, for Kubernetes Service backends. (#1332, @Miciah) - HTTPRequestHeaderFilter and HTTPResponseHeaderFilter forbid configuring
multiple actions for the same header. (#1497, @rainest) - Changes "custom" conformance level to "implementation-specific" (#1436,
@LCaparelli) - Clarification that changes to ReferenceGrants MUST be reconciled (#1429,
@robscott)
Conformance Tests
- ExemptFeatures have been merged into SupportedFeatures providing implementations
a uniform way to specify the features they support.
(#1507, @robscott) (#1394, @gyohuangxin) - To be conformant with the API, if there is no ReferenceGrant that grants a
listener to reference a secret in another namespace, the
ListenerConditionReason for the condition ResolvedRefs must be set to
RefNotPermitted instead of InvalidCertificateRef. (#1305, @mlavacca) - A new test has been added to cover HTTP Redirects (#1556, @LiorLieberman)
- Fix Gateway reference in HTTPRouteInvalidParentRefNotMatchingListenerPort
(#1591, @sayboras)
Build Changes
- We now provide a multi-arch
image including new support forarm64
in addition toamd64
for our
validating webhook.
(#627, @wilsonwu & @Xunzhuo)
Developer Notes
- Deprecated
v1alpha2
Go types are now aliases to theirv1beta1
versions
(#1390, @howardjohn)
New Contributors
- @lizrice made their first contribution in #1280
- @timrosenblatt made their first contribution in #1293
- @abhijit-dev82 made their first contribution in #1290
- @wstcliyu made their first contribution in #1292
- @mlavacca made their first contribution in #1305
- @pmalek made their first contribution in #1322
- @carlisia made their first contribution in #1337
- @david-yu made their first contribution in #1342
- @kate-osborn made their first contribution in #1359
- @asim-reza made their first contribution in #1376
- @akankshakumari393 made their first contribution in #1404
- @subi9 made their first contribution in #1346
- @oscr made their first contribution in #1423
- @Amila-Rukshan made their first contribution in #1438
- @naqvis made their first contribution in #1421
- @LCaparelli made their first contribution in #1436
- @jrsmroz made their first contribution in #1456
- @pydctw made their first contribution in #1471
- @arkodg made their first contribution in #1475
- @wilsonwu made their first contribution in #1462
- @rperper made their first contribution in #1529
- @Xunzhuo made their first contribution in #1550
- @jtmckay2017 made their first contribution in #1557
- @michaelvl made their first contribution in #1558
- @dspo made their first contribution in #1566
- @mmontes11 made their first contribution in #1577
- @sayboras made their first contribution in #1591
- @LiorLieberman made their first contribution in #1556
- @lucacome made their first contribution in #1597
- @frankbu made their first contribution in #1609
Full Changelog: v0.5.0...v0.6.0