Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions .github/workflows/experimental_conformance.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ on:
tags:
- "v*.*.*"
paths:
- "charts/gateway-helm/crds/gatewayapi-crds.yaml"
- "charts/gateway-crds-helm/templates/experimental-gatewayapi-crds.yaml"
- "test/conformance/experimental_conformance_test.go"
- "internal/gatewayapi/conformance/suite.go"
pull_request:
paths:
- "charts/gateway-helm/crds/gatewayapi-crds.yaml"
- "charts/gateway-crds-helm/templates/experimental-gatewayapi-crds.yaml"
- "test/conformance/experimental_conformance_test.go"
- "internal/gatewayapi/conformance/suite.go"
# Add workflow_dispatch to trigger this workflow manually by maintainers.
Expand All @@ -26,22 +26,22 @@ jobs:
fail-fast: false
matrix:
target:
- version: v1.30.13
- version: v1.32.11
ipFamily: ipv4
profile: default
- version: v1.31.9
- version: v1.33.7
ipFamily: ipv4
profile: default
- version: v1.32.5
- version: v1.34.3
# only run ipv6 test on this version to save time
ipFamily: ipv6
profile: default
# TODO: this's IPv4 first, need a way to test IPv6 first.
- version: v1.33.1
- version: v1.35.0
# only run dual test on latest version to save time
ipFamily: dual
profile: default
- version: v1.33.1
- version: v1.35.0
# only run dual test on latest version to save time
ipFamily: dual
profile: gateway-namespace-mode
Expand Down
7 changes: 1 addition & 6 deletions api/v1alpha1/envoygateway_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -134,14 +134,9 @@ type EnvoyGatewaySpec struct {

// GatewayAPI defines an experimental Gateway API resource that can be enabled.
// +enum
// +kubebuilder:validation:Enum=XListenerSet;XBackendTrafficPolicy
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

XListenerSet promote to v1 in Gateway API v1.5

Copy link
Contributor

@arkodg arkodg Feb 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

guessing this is the breaking change because even if a user wants to stay on XListenerSet, then cant ? and must migrate to ListenerSet when upgrading to v1.8 ?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, If we need rethink about this in the future, do we need to support X API.

Copy link

@maelvls maelvls Feb 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for what it's worth, we (cert-manager) have decided to do a clean cut upgrade to ListenerSet as opposed to keeping both resources. There was a discussion on whether to keep the X resources around in 1.5: https://kubernetes.slack.com/archives/CR0H13KGA/p1770328007249819

Copy link
Member

@zhaohuabing zhaohuabing Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 to removing XListenerSet support from 1.8 since we've already set expectations in the GatewayAPISettings that These APIs are experimental today and are subject to change or removal as they mature.

Maintaining both XListenerSet and ListenerSet would add quite a bit of ongoing overhead, and it might not be worth keeping both around.

// +kubebuilder:validation:Enum=XBackendTrafficPolicy
type GatewayAPI string

const (
// XListenerSet enables the Gateway API XListenerSet resource.
XListenerSet GatewayAPI = "XListenerSet"
)

// GatewayAPISettings provides a mechanism to opt into experimental Gateway API resources.
// These APIs are experimental today and are subject to change or removal as they mature.
type GatewayAPISettings struct {
Expand Down
6,018 changes: 3,710 additions & 2,308 deletions charts/gateway-crds-helm/templates/experimental-gatewayapi-crds.yaml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -370,8 +370,9 @@ spec:
If WellKnownCACertificates is unspecified or empty (""), then CACertificateRefs
must be specified with at least one entry for a valid configuration. Only one of
CACertificateRefs or WellKnownCACertificates may be specified, not both.
enum:
- System
maxLength: 253
minLength: 1
pattern: ^(System|([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/([A-Za-z0-9][-A-Za-z0-9_.]{0,61})?[A-Za-z0-9]))$
type: string
type: object
x-kubernetes-validations:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2045,8 +2045,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header
to be matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down Expand Up @@ -2119,8 +2125,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header
to be matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -263,8 +263,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header to be
matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down Expand Up @@ -315,8 +321,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header to be
matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down Expand Up @@ -422,8 +434,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header to be
matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down Expand Up @@ -484,8 +502,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header to be
matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down Expand Up @@ -536,8 +560,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header to be
matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down Expand Up @@ -643,8 +673,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header to be
matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13569,8 +13569,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP
Header to be matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down Expand Up @@ -14975,8 +14981,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header
to be matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down Expand Up @@ -16319,8 +16331,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header
to be matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -239,8 +239,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header to be
matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down Expand Up @@ -313,8 +319,14 @@ spec:
pattern: ^[A-Za-z0-9!#$%&'*+\-.^_\x60|~]+$
type: string
value:
description: Value is the value of HTTP Header to be
matched.
description: |-
Value is the value of HTTP Header to be matched.
<gateway:experimental:description>
Must consist of printable US-ASCII characters, optionally separated
by single tabs or spaces. See: https://tools.ietf.org/html/rfc7230#section-3.2
</gateway:experimental:description>

<gateway:experimental:validation:Pattern=`^[!-~]+([\t ]?[!-~]+)*$`>
maxLength: 4096
minLength: 1
type: string
Expand Down
Loading