Skip to content

Commit 291f02b

Browse files
zirainjukiezhaohuabingarkodgwoodgear
authored
[release/v1.5] cherrypick for rc.2 (#6696)
* chore: cleanups from #6597 (#6647) Cleanup Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com> Signed-off-by: zirain <zirain2009@gmail.com> * fix: set order for grpc_web and grpc_stats filters (#6626) * set order for grpc_web and grpc_stats filters Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * address comment Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> --------- Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> Signed-off-by: zirain <zirain2009@gmail.com> * fix: nil pointer when InsecureSkipVerify is true (#6652) * fix nil pointer when InsecureSkipVerify is true Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * add test Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * delete cacert for the xds translator test Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> Signed-off-by: zirain <zirain2009@gmail.com> * fix: allow imageRepository contains port (#6658) (#6660) (cherry picked from commit c988ec5) Signed-off-by: Arko Dasgupta <arko@tetrate.io> Co-authored-by: 聪 <congwu@alauda.io> Signed-off-by: zirain <zirain2009@gmail.com> * docs: improve policy concepts section (#6663) better explain * targets * precedence * merge types Signed-off-by: Arko Dasgupta <arko@tetrate.io> Signed-off-by: zirain <zirain2009@gmail.com> * docs: observability pre req not required in admin console page (#6662) Signed-off-by: Arko Dasgupta <arko@tetrate.io> Signed-off-by: zirain <zirain2009@gmail.com> * docs: xds name scheme v2 (#6656) * name scheme v2 Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> name scheme v2 Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * address comment Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * address comment Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> --------- Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> Signed-off-by: zirain <zirain2009@gmail.com> * docs: highlight wait step (#6665) * docs: highlight wait step Signed-off-by: zirain <zirain2009@gmail.com> * update Signed-off-by: zirain <zirain2009@gmail.com> --------- Signed-off-by: zirain <zirain2009@gmail.com> * fix: populate status for custom backendRef not found (#6670) Signed-off-by: bitliu <bitliu@tencent.com> Signed-off-by: zirain <zirain2009@gmail.com> * fix: xds name schema v2 (#6638) * rename route config Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * rename HCM statPrefix Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * rename virtual host Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * fix test Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * minor change Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * address comment Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> --------- Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> Signed-off-by: zirain <zirain2009@gmail.com> * docs: expand Gateway Namespace Mode doc on client/server auth (#6616) * Expand Gateway Namespace Mode doc on client/server auth Signed-off-by: Karol Szwaj <karol.szwaj@gmail.com> * Add additional explanation to the overview Signed-off-by: Karol Szwaj <karol.szwaj@gmail.com> --------- Signed-off-by: Karol Szwaj <karol.szwaj@gmail.com> Signed-off-by: zirain <zirain2009@gmail.com> * increase earlyRequestHeaders from 16 to 64 (#6673) * created a new definition of HTTPFilterHeader that supports 64 items for `set`, `add`, and `remove` * sanitizing request headers from untrusted downstream traffic is a common use case and 16 items may not be adequate enough at times. This action needs to be performed route processing for cases and the HTTPRoute filters cannot be used Signed-off-by: Arko Dasgupta <arko@tetrate.io> Signed-off-by: zirain <zirain2009@gmail.com> * docs: skipping TLS verification (#6653) * docs for skipping TLS verification Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * remove btlsp for skiptlsverify Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * address comment Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * address comment Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * remove public Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> --------- Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> Signed-off-by: zirain <zirain2009@gmail.com> * feat: add listener metadata (#6639) * add listener metadata Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> * remove sort Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> --------- Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> Signed-off-by: zirain <zirain2009@gmail.com> * fix: Fix BTP ZoneAware translation (#6668) * Fix BTP ZoneAware translation Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com> * Add e2e Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com> --------- Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com> Signed-off-by: zirain <zirain2009@gmail.com> * docs: unhide zoneaware api for docs (#6683) unhide api docs Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com> Signed-off-by: zirain <zirain2009@gmail.com> * watchable: use Store directly instead of HandleStore wrapper (#6680) * watchable: use Store directly instead of HandleStore wrapper GC is unable to collect the temporary references created in `HandleStore` Relates to #6406 Signed-off-by: Arko Dasgupta <arko@tetrate.io> * fix test Signed-off-by: Arko Dasgupta <arko@tetrate.io> --------- Signed-off-by: Arko Dasgupta <arko@tetrate.io> Signed-off-by: zirain <zirain2009@gmail.com> * docs: Update Zone Aware Routing for BackendTrafficPolicy configuration example (#6667) Update zone aware routing docs Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com> Signed-off-by: zirain <zirain2009@gmail.com> * combine the xds-translator and xds-server runner into one (#6586) * combine the xds-translator and xds-server into one xds runner * primarily to reduce memory and convergence time Signed-off-by: Arko Dasgupta <arko@tetrate.io> Signed-off-by: zirain <zirain2009@gmail.com> * build(deps): bump the gomod group across 1 directory with 6 updates (#6691) * build(deps): bump the gomod group across 1 directory with 6 updates Bumps the gomod group with 4 updates in the / directory: [github.com/miekg/dns](https://github.com/miekg/dns), [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang), [github.com/quic-go/quic-go](https://github.com/quic-go/quic-go) and [go.opentelemetry.io/proto/otlp](https://github.com/open-telemetry/opentelemetry-proto-go). Updates `github.com/miekg/dns` from 1.1.67 to 1.1.68 - [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release) - [Commits](miekg/dns@v1.1.67...v1.1.68) Updates `github.com/prometheus/client_golang` from 1.22.0 to 1.23.0 - [Release notes](https://github.com/prometheus/client_golang/releases) - [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md) - [Commits](prometheus/client_golang@v1.22.0...v1.23.0) Updates `github.com/quic-go/quic-go` from 0.52.0 to 0.54.0 - [Release notes](https://github.com/quic-go/quic-go/releases) - [Commits](quic-go/quic-go@v0.52.0...v0.54.0) Updates `go.opentelemetry.io/proto/otlp` from 1.7.0 to 1.7.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-proto-go/releases) - [Commits](open-telemetry/opentelemetry-proto-go@v1.7.0...v1.7.1) Updates `google.golang.org/genproto/googleapis/api` from 0.0.0-20250603155806-513f23925822 to 0.0.0-20250728155136-f173205681a0 - [Commits](https://github.com/googleapis/go-genproto/commits) Updates `google.golang.org/genproto/googleapis/rpc` from 0.0.0-20250603155806-513f23925822 to 0.0.0-20250728155136-f173205681a0 - [Commits](https://github.com/googleapis/go-genproto/commits) --- updated-dependencies: - dependency-name: github.com/miekg/dns dependency-version: 1.1.68 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: gomod - dependency-name: github.com/prometheus/client_golang dependency-version: 1.23.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: gomod - dependency-name: github.com/quic-go/quic-go dependency-version: 0.54.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: gomod - dependency-name: go.opentelemetry.io/proto/otlp dependency-version: 1.7.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: gomod - dependency-name: google.golang.org/genproto/googleapis/api dependency-version: 0.0.0-20250728155136-f173205681a0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: gomod - dependency-name: google.golang.org/genproto/googleapis/rpc dependency-version: 0.0.0-20250728155136-f173205681a0 dependency-type: indirect update-type: version-update:semver-patch dependency-group: gomod ... Signed-off-by: dependabot[bot] <support@github.com> * fix gen Signed-off-by: zirain <zirain2009@gmail.com> --------- Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: zirain <zirain2009@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: zirain <zirain2009@gmail.com> Signed-off-by: zirain <zirain2009@gmail.com> * fix: controller panic when reloading config (#6688) * fix controller panic when reloading config Signed-off-by: zirain <zirain2009@gmail.com> * use gwapiv1.Duration instead of metav1.Duration (#6664) * use gwapiv1.Duration instead of metav1.Duration fixes: #4746 Signed-off-by: Arko Dasgupta <arko@tetrate.io> * add charts Signed-off-by: Arko Dasgupta <arko@tetrate.io> * go back to metav1 in IR to make YAML tests happy Signed-off-by: Arko Dasgupta <arko@tetrate.io> Signed-off-by: zirain <zirain2009@gmail.com> * fix: don't block deployment creating when missing secret in EnvoyProxy (#6692) * fix: don't block deployment creating when missing secret in EnvoyProxy Signed-off-by: zirain <zirain2009@gmail.com> * [release/v1.5] release notes for rc.2 (#6697) * [release/v1.5] release notes for rc.2 Signed-off-by: zirain <zirain2009@gmail.com> --------- Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com> Signed-off-by: zirain <zirain2009@gmail.com> Signed-off-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> Signed-off-by: Arko Dasgupta <arko@tetrate.io> Signed-off-by: bitliu <bitliu@tencent.com> Signed-off-by: Karol Szwaj <karol.szwaj@gmail.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Isaac <10012479+jukie@users.noreply.github.com> Co-authored-by: Huabing (Robin) Zhao <zhaohuabing@gmail.com> Co-authored-by: Arko Dasgupta <arkodg@users.noreply.github.com> Co-authored-by: 聪 <congwu@alauda.io> Co-authored-by: Xunzhuo <bitliu@tencent.com> Co-authored-by: Karol Szwaj <karol.szwaj@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 parent c988ec5 commit 291f02b

File tree

145 files changed

+3937
-1810
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

145 files changed

+3937
-1810
lines changed

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v1.5.0-rc.1
1+
v1.5.0-rc.2

api/v1alpha1/clienttrafficpolicy_types.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ package v1alpha1
77

88
import (
99
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
10-
gwapiv1 "sigs.k8s.io/gateway-api/apis/v1"
1110
gwapiv1a2 "sigs.k8s.io/gateway-api/apis/v1alpha2"
1211
)
1312

@@ -159,7 +158,7 @@ type HeaderSettings struct {
159158
// routing, tracing and built-in header manipulation.
160159
//
161160
// +optional
162-
EarlyRequestHeaders *gwapiv1.HTTPHeaderFilter `json:"earlyRequestHeaders,omitempty"`
161+
EarlyRequestHeaders *HTTPHeaderFilter `json:"earlyRequestHeaders,omitempty"`
163162
}
164163

165164
// WithUnderscoresAction configures the action to take when an HTTP header with underscores

api/v1alpha1/cors_types.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
package v1alpha1
77

8-
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
8+
import gwapiv1 "sigs.k8s.io/gateway-api/apis/v1"
99

1010
// Origin is defined by the scheme (protocol), hostname (domain), and port of
1111
// the URL used to access it. The hostname can be "precise" which is just the
@@ -61,7 +61,7 @@ type CORS struct {
6161
// It specifies the value in the Access-Control-Max-Age CORS response header..
6262
//
6363
// +optional
64-
MaxAge *metav1.Duration `json:"maxAge,omitempty"`
64+
MaxAge *gwapiv1.Duration `json:"maxAge,omitempty"`
6565

6666
// AllowCredentials indicates whether a request can include user credentials
6767
// like cookies, authentication headers, or TLS client certificates.

api/v1alpha1/dns_types.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
package v1alpha1
77

8-
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
8+
import gwapiv1 "sigs.k8s.io/gateway-api/apis/v1"
99

1010
// DNSLookupFamily defines the behavior of Envoy when resolving DNS for hostnames
1111
// +enum
@@ -31,10 +31,14 @@ const (
3131
type DNS struct {
3232
// DNSRefreshRate specifies the rate at which DNS records should be refreshed.
3333
// Defaults to 30 seconds.
34-
DNSRefreshRate *metav1.Duration `json:"dnsRefreshRate,omitempty"`
34+
//
35+
// +optional
36+
DNSRefreshRate *gwapiv1.Duration `json:"dnsRefreshRate,omitempty"`
3537
// RespectDNSTTL indicates whether the DNS Time-To-Live (TTL) should be respected.
3638
// If the value is set to true, the DNS refresh rate will be set to the resource record’s TTL.
3739
// Defaults to true.
40+
//
41+
// +optional
3842
RespectDNSTTL *bool `json:"respectDnsTtl,omitempty"`
3943
// LookupFamily determines how Envoy would resolve DNS for Routes where the backend is specified as a fully qualified domain name (FQDN).
4044
// If set, this configuration overrides other defaults.

api/v1alpha1/envoygateway_types.go

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -143,13 +143,21 @@ type KubernetesClientRateLimit struct {
143143
// LeaderElection defines the desired leader election settings.
144144
type LeaderElection struct {
145145
// LeaseDuration defines the time non-leader contenders will wait before attempting to claim leadership.
146-
// It's based on the timestamp of the last acknowledged signal. The default setting is 15 seconds.
146+
// It's based on the timestamp of the last acknowledged signal.
147+
// The default setting is 15 seconds.
148+
//
149+
// +optional
147150
LeaseDuration *gwapiv1.Duration `json:"leaseDuration,omitempty"`
148151
// RenewDeadline represents the time frame within which the current leader will attempt to renew its leadership
149-
// status before relinquishing its position. The default setting is 10 seconds.
152+
// status before relinquishing its position.
153+
// The default setting is 10 seconds.
154+
//
155+
// +optional
150156
RenewDeadline *gwapiv1.Duration `json:"renewDeadline,omitempty"`
151157
// RetryPeriod denotes the interval at which LeaderElector clients should perform action retries.
152158
// The default setting is 2 seconds.
159+
//
160+
// +optional
153161
RetryPeriod *gwapiv1.Duration `json:"retryPeriod,omitempty"`
154162
// Disable provides the option to turn off leader election, which is enabled by default.
155163
Disable *bool `json:"disable,omitempty"`
@@ -173,7 +181,7 @@ type EnvoyGatewayLogging struct {
173181
}
174182

175183
// EnvoyGatewayLogComponent defines a component that supports a configured logging level.
176-
// +kubebuilder:validation:Enum=default;provider;gateway-api;xds-translator;xds-server;infrastructure;global-ratelimit
184+
// +kubebuilder:validation:Enum=default;provider;gateway-api;xds-translator;xds-server;xds;infrastructure;global-ratelimit
177185
type EnvoyGatewayLogComponent string
178186

179187
const (
@@ -193,6 +201,9 @@ const (
193201
// LogComponentXdsServerRunner defines the "xds-server" runner component.
194202
LogComponentXdsServerRunner EnvoyGatewayLogComponent = "xds-server"
195203

204+
// LogComponentXdsRunner defines the "xds" runner component.
205+
LogComponentXdsRunner EnvoyGatewayLogComponent = "xds"
206+
196207
// LogComponentInfrastructureRunner defines the "infrastructure" runner component.
197208
LogComponentInfrastructureRunner EnvoyGatewayLogComponent = "infrastructure"
198209

@@ -432,9 +443,9 @@ type RateLimit struct {
432443

433444
// Timeout specifies the timeout period for the proxy to access the ratelimit server
434445
// If not set, timeout is 20ms.
446+
//
435447
// +optional
436-
// +kubebuilder:validation:Format=duration
437-
Timeout *metav1.Duration `json:"timeout,omitempty"`
448+
Timeout *gwapiv1.Duration `json:"timeout,omitempty"`
438449

439450
// FailClosed is a switch used to control the flow of traffic
440451
// when the response from the ratelimit server cannot be obtained.

api/v1alpha1/envoyproxy_types.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,6 +272,12 @@ const (
272272
// EnvoyFilterRateLimit defines the Envoy HTTP rate limit filter.
273273
EnvoyFilterRateLimit EnvoyFilter = "envoy.filters.http.ratelimit"
274274

275+
// EnvoyFilterGRPCWeb defines the Envoy HTTP gRPC-web filter.
276+
EnvoyFilterGRPCWeb EnvoyFilter = "envoy.filters.http.grpc_web"
277+
278+
// EnvoyFilterGRPCStats defines the Envoy HTTP gRPC stats filter.
279+
EnvoyFilterGRPCStats EnvoyFilter = "envoy.filters.http.grpc_stats"
280+
275281
// EnvoyFilterCustomResponse defines the Envoy HTTP custom response filter.
276282
EnvoyFilterCustomResponse EnvoyFilter = "envoy.filters.http.custom_response"
277283

@@ -344,12 +350,12 @@ type ShutdownConfig struct {
344350
// If unspecified, defaults to 60 seconds.
345351
//
346352
// +optional
347-
DrainTimeout *metav1.Duration `json:"drainTimeout,omitempty"`
353+
DrainTimeout *gwapiv1.Duration `json:"drainTimeout,omitempty"`
348354
// MinDrainDuration defines the minimum drain duration allowing time for endpoint deprogramming to complete.
349355
// If unspecified, defaults to 10 seconds.
350356
//
351357
// +optional
352-
MinDrainDuration *metav1.Duration `json:"minDrainDuration,omitempty"`
358+
MinDrainDuration *gwapiv1.Duration `json:"minDrainDuration,omitempty"`
353359
}
354360

355361
// +kubebuilder:validation:XValidation:rule="((has(self.envoyDeployment) && !has(self.envoyDaemonSet)) || (!has(self.envoyDeployment) && has(self.envoyDaemonSet))) || (!has(self.envoyDeployment) && !has(self.envoyDaemonSet))",message="only one of envoyDeployment or envoyDaemonSet can be specified"

api/v1alpha1/fault_injection.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
package v1alpha1
77

8-
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
8+
import gwapiv1 "sigs.k8s.io/gateway-api/apis/v1"
99

1010
// FaultInjection defines the fault injection policy to be applied. This configuration can be used to
1111
// inject delays and abort requests to mimic failure scenarios such as service failures and overloads
@@ -29,7 +29,7 @@ type FaultInjectionDelay struct {
2929
// FixedDelay specifies the fixed delay duration
3030
//
3131
// +required
32-
FixedDelay *metav1.Duration `json:"fixedDelay"`
32+
FixedDelay *gwapiv1.Duration `json:"fixedDelay"`
3333

3434
// Percentage specifies the percentage of requests to be delayed. Default 100%, if set 0, no requests will be delayed. Accuracy to 0.0001%.
3535
// +optional

api/v1alpha1/healthcheck_types.go

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,7 @@
55

66
package v1alpha1
77

8-
import (
9-
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
10-
gwapiv1 "sigs.k8s.io/gateway-api/apis/v1"
11-
)
8+
import gwapiv1 "sigs.k8s.io/gateway-api/apis/v1"
129

1310
// HealthCheck configuration to decide which endpoints
1411
// are healthy and can be used for routing.
@@ -42,10 +39,9 @@ type PassiveHealthCheck struct {
4239

4340
// Interval defines the time between passive health checks.
4441
//
45-
// +kubebuilder:validation:Format=duration
4642
// +kubebuilder:default="3s"
4743
// +optional
48-
Interval *metav1.Duration `json:"interval,omitempty"`
44+
Interval *gwapiv1.Duration `json:"interval,omitempty"`
4945

5046
// ConsecutiveLocalOriginFailures sets the number of consecutive local origin failures triggering ejection.
5147
// Parameter takes effect only when split_external_local_origin_errors is set to true.
@@ -68,10 +64,9 @@ type PassiveHealthCheck struct {
6864

6965
// BaseEjectionTime defines the base duration for which a host will be ejected on consecutive failures.
7066
//
71-
// +kubebuilder:validation:Format=duration
7267
// +kubebuilder:default="30s"
7368
// +optional
74-
BaseEjectionTime *metav1.Duration `json:"baseEjectionTime,omitempty"`
69+
BaseEjectionTime *gwapiv1.Duration `json:"baseEjectionTime,omitempty"`
7570

7671
// MaxEjectionPercent sets the maximum percentage of hosts in a cluster that can be ejected.
7772
//
@@ -90,22 +85,19 @@ type PassiveHealthCheck struct {
9085
type ActiveHealthCheck struct {
9186
// Timeout defines the time to wait for a health check response.
9287
//
93-
// +kubebuilder:validation:Format=duration
9488
// +kubebuilder:default="1s"
9589
// +optional
96-
Timeout *metav1.Duration `json:"timeout"`
90+
Timeout *gwapiv1.Duration `json:"timeout"`
9791

9892
// Interval defines the time between active health checks.
9993
//
100-
// +kubebuilder:validation:Format=duration
10194
// +kubebuilder:default="3s"
10295
// +optional
103-
Interval *metav1.Duration `json:"interval"`
96+
Interval *gwapiv1.Duration `json:"interval"`
10497

10598
// InitialJitter defines the maximum time Envoy will wait before the first health check.
10699
// Envoy will randomly select a value between 0 and the initial jitter value.
107100
//
108-
// +kubebuilder:validation:Format=duration
109101
// +optional
110102
InitialJitter *gwapiv1.Duration `json:"initialJitter,omitempty"`
111103

api/v1alpha1/loadbalancer_types.go

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
package v1alpha1
77

8-
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
8+
import gwapiv1 "sigs.k8s.io/gateway-api/apis/v1"
99

1010
// LoadBalancer defines the load balancer policy to be applied.
1111
// +union
@@ -47,7 +47,6 @@ type LoadBalancer struct {
4747
// ZoneAware defines the configuration related to the distribution of requests between locality zones.
4848
//
4949
// +optional
50-
// +notImplementedHide
5150
ZoneAware *ZoneAware `json:"zoneAware,omitempty"`
5251
}
5352

@@ -120,7 +119,7 @@ type Cookie struct {
120119
// Max-Age attribute value.
121120
//
122121
// +optional
123-
TTL *metav1.Duration `json:"ttl,omitempty"`
122+
TTL *gwapiv1.Duration `json:"ttl,omitempty"`
124123
// Additional Attributes to set for the generated cookie.
125124
//
126125
// +optional
@@ -147,7 +146,7 @@ type SlowStart struct {
147146
// Currently only supports linear growth of traffic. For additional details,
148147
// see https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/cluster/v3/cluster.proto#config-cluster-v3-cluster-slowstartconfig
149148
// +kubebuilder:validation:Required
150-
Window *metav1.Duration `json:"window"`
149+
Window *gwapiv1.Duration `json:"window"`
151150
// TODO: Add support for non-linear traffic increases based on user usage.
152151
}
153152

@@ -156,7 +155,6 @@ type ZoneAware struct {
156155
// PreferLocalZone configures zone-aware routing to prefer sending traffic to the local locality zone.
157156
//
158157
// +optional
159-
// +notImplementedHide
160158
PreferLocal *PreferLocalZone `json:"preferLocal,omitempty"`
161159
}
162160

@@ -166,13 +164,11 @@ type PreferLocalZone struct {
166164
// which maintains equal distribution among upstream endpoints while sending as much traffic as possible locally.
167165
//
168166
// +optional
169-
// +notImplementedHide
170167
Force *ForceLocalZone `json:"force,omitempty"`
171168

172169
// MinEndpointsThreshold is the minimum number of total upstream endpoints across all zones required to enable zone-aware routing.
173170
//
174171
// +optional
175-
// +notImplementedHide
176172
MinEndpointsThreshold *uint64 `json:"minEndpointsThreshold,omitempty"`
177173
}
178174

api/v1alpha1/oidc_types.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
package v1alpha1
77

88
import (
9-
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
109
gwapiv1 "sigs.k8s.io/gateway-api/apis/v1"
1110
)
1211

@@ -110,7 +109,7 @@ type OIDC struct {
110109
// OAuth flow will fail.
111110
//
112111
// +optional
113-
DefaultTokenTTL *metav1.Duration `json:"defaultTokenTTL,omitempty"`
112+
DefaultTokenTTL *gwapiv1.Duration `json:"defaultTokenTTL,omitempty"`
114113

115114
// RefreshToken indicates whether the Envoy should automatically refresh the
116115
// id token and access token when they expire.
@@ -127,8 +126,9 @@ type OIDC struct {
127126
//
128127
// If not specified, defaults to 604800s (one week).
129128
// Note: this field is only applicable when the "refreshToken" field is set to true.
129+
//
130130
// +optional
131-
DefaultRefreshTokenTTL *metav1.Duration `json:"defaultRefreshTokenTTL,omitempty"`
131+
DefaultRefreshTokenTTL *gwapiv1.Duration `json:"defaultRefreshTokenTTL,omitempty"`
132132

133133
// Skips OIDC authentication when the request contains a header that will be extracted by the JWT filter. Unless
134134
// explicitly stated otherwise in the extractFrom field, this will be the "Authorization: Bearer ..." header.

0 commit comments

Comments
 (0)