From f163dc0e2710eb5a9dc32dd840d1cd2979c6ed42 Mon Sep 17 00:00:00 2001 From: Clemens Beck Date: Fri, 5 Dec 2025 11:29:36 +0100 Subject: [PATCH 1/4] ci: add tests for Kubernetes 1.34 * add Kubernetes 1.34 conformance and e2e tests * drop Kubernetes 1.30 conformance and e2e tests * update compatibility matrix Signed-off-by: Clemens Beck --- .github/workflows/build_and_test.yaml | 24 ++++++++++++------------ site/content/en/news/releases/matrix.md | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build_and_test.yaml b/.github/workflows/build_and_test.yaml index abc1b59344..cafe3a72ec 100644 --- a/.github/workflows/build_and_test.yaml +++ b/.github/workflows/build_and_test.yaml @@ -133,23 +133,23 @@ jobs: fail-fast: false matrix: target: - - version: v1.30.13 + - version: v1.31.12 ipFamily: ipv4 profile: default - - version: v1.31.9 + - version: v1.32.8 ipFamily: ipv4 profile: default - - version: v1.32.5 + - version: v1.33.4 ipFamily: ipv6 # only run ipv6 test on this version to save time profile: default # TODO: this's IPv4 first, need a way to test IPv6 first. - - version: v1.33.1 + - version: v1.34.0 ipFamily: dual # only run dual test on latest version to save time profile: default - - version: v1.33.1 + - version: v1.34.0 ipFamily: dual # only run dual test on latest version to save time profile: gateway-namespace-mode - - version: v1.33.1 + - version: v1.34.0 ipFamily: ipv4 profile: xds-name-scheme-v2 steps: @@ -186,23 +186,23 @@ jobs: fail-fast: false matrix: target: - - version: v1.30.13 + - version: v1.31.12 ipFamily: ipv4 profile: default - - version: v1.31.9 + - version: v1.32.8 ipFamily: ipv4 profile: default - - version: v1.32.5 + - version: v1.33.4 ipFamily: ipv6 # only run ipv6 test on this version to save time profile: default # TODO: this's IPv4 first, need a way to test IPv6 first. - - version: v1.33.1 + - version: v1.34.0 ipFamily: dual # only run dual test on latest version to save time profile: default - - version: v1.33.1 + - version: v1.34.0 ipFamily: dual # only run dual test on latest version to save time profile: gateway-namespace-mode - - version: v1.33.1 + - version: v1.34.0 ipFamily: ipv4 profile: xds-name-scheme-v2 diff --git a/site/content/en/news/releases/matrix.md b/site/content/en/news/releases/matrix.md index 007a463445..60911cae9a 100644 --- a/site/content/en/news/releases/matrix.md +++ b/site/content/en/news/releases/matrix.md @@ -7,7 +7,7 @@ Envoy Gateway relies on the Envoy Proxy and the Gateway API, and runs within a K | Envoy Gateway version | Envoy Proxy version | Rate Limit version | Gateway API version | Kubernetes version | End of Life | | --------------------- | --------------------------- | ------------------ | ------------------- | -------------------------- | ----------- | -| latest | **dev-latest** | **master** | **v1.4.0** | v1.30, v1.31, v1.32, v1.33 | n/a | +| latest | **dev-latest** | **master** | **v1.4.1** | v1.31, v1.32, v1.33, v1.34 | n/a | | v1.6 | **distroless-v1.36.2** | **99d85510** | **v1.4.0** | v1.30, v1.31, v1.32, v1.33 | 2026/05/13 | | v1.5 | **distroless-v1.35.0** | **a90e0e5d** | **v1.3.0** | v1.30, v1.31, v1.32, v1.33 | 2026/02/13 | | v1.4 | **distroless-v1.34.1** | **3e085e5b** | **v1.3.0** | v1.30, v1.31, v1.32, v1.33 | 2025/11/13 | From 3551dd0752a9870980e4c62dc54bf1342b36faab Mon Sep 17 00:00:00 2001 From: Clemens Beck Date: Thu, 11 Dec 2025 08:55:54 +0100 Subject: [PATCH 2/4] bump envtest K8s version Signed-off-by: Clemens Beck --- tools/make/kube.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/make/kube.mk b/tools/make/kube.mk index 5a5bab2631..f6e9a26e0e 100644 --- a/tools/make/kube.mk +++ b/tools/make/kube.mk @@ -1,10 +1,10 @@ # ENVTEST_K8S_VERSION refers to the version of kubebuilder assets to be downloaded by envtest binary. # To know the available versions check: # - https://github.com/kubernetes-sigs/controller-tools/blob/main/envtest-releases.yaml -ENVTEST_K8S_VERSION ?= 1.33.0 +ENVTEST_K8S_VERSION ?= 1.34.1 # Need run cel validation across multiple versions of k8s -# TODO: update kubebuilder assets to 1.34.0 when available -ENVTEST_K8S_VERSIONS ?= 1.30.3 1.31.0 1.32.0 1.33.0 +# TODO: update kubebuilder assets to 1.35.0 when available +ENVTEST_K8S_VERSIONS ?= 1.31.0 1.32.0 1.33.0 1.34.1 # GATEWAY_API_VERSION refers to the version of Gateway API CRDs. # For more details, see https://gateway-api.sigs.k8s.io/guides/getting-started/#installing-gateway-api From fedc0f1a79caeaeb79545a340864e9938bacd1bb Mon Sep 17 00:00:00 2001 From: Clemens Beck Date: Mon, 15 Dec 2025 17:10:56 +0100 Subject: [PATCH 3/4] update to K8s 1.34.2 Signed-off-by: Clemens Beck --- .github/workflows/build_and_test.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build_and_test.yaml b/.github/workflows/build_and_test.yaml index cafe3a72ec..6f068e8f76 100644 --- a/.github/workflows/build_and_test.yaml +++ b/.github/workflows/build_and_test.yaml @@ -143,13 +143,13 @@ jobs: ipFamily: ipv6 # only run ipv6 test on this version to save time profile: default # TODO: this's IPv4 first, need a way to test IPv6 first. - - version: v1.34.0 + - version: v1.34.2 ipFamily: dual # only run dual test on latest version to save time profile: default - - version: v1.34.0 + - version: v1.34.2 ipFamily: dual # only run dual test on latest version to save time profile: gateway-namespace-mode - - version: v1.34.0 + - version: v1.34.2 ipFamily: ipv4 profile: xds-name-scheme-v2 steps: @@ -196,13 +196,13 @@ jobs: ipFamily: ipv6 # only run ipv6 test on this version to save time profile: default # TODO: this's IPv4 first, need a way to test IPv6 first. - - version: v1.34.0 + - version: v1.34.2 ipFamily: dual # only run dual test on latest version to save time profile: default - - version: v1.34.0 + - version: v1.34.2 ipFamily: dual # only run dual test on latest version to save time profile: gateway-namespace-mode - - version: v1.34.0 + - version: v1.34.2 ipFamily: ipv4 profile: xds-name-scheme-v2 From 7c588bccb7eb450c5e3a293c4eed8d22503d2a1a Mon Sep 17 00:00:00 2001 From: Clemens Beck Date: Tue, 16 Dec 2025 12:51:51 +0100 Subject: [PATCH 4/4] fix CEL test on K8s 1.34 The error message returned by the API server now escapes the quotes of "null". Fixed by splitting the expected error string into smaller strings to keep compatible with K8s <1.34. Signed-off-by: Clemens Beck --- test/cel-validation/backendtrafficpolicy_test.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/cel-validation/backendtrafficpolicy_test.go b/test/cel-validation/backendtrafficpolicy_test.go index ca95df0bf2..d67e051c2a 100644 --- a/test/cel-validation/backendtrafficpolicy_test.go +++ b/test/cel-validation/backendtrafficpolicy_test.go @@ -1176,7 +1176,9 @@ func TestBackendTrafficPolicyTarget(t *testing.T) { } }, wantErrors: []string{ - `[spec.rateLimit.global.rules: Too many: 129: must have at most 128 items, : Invalid value: "null": some validation rules were not checked because the object was invalid; correct the existing errors to complete validation]`, + `[spec.rateLimit.global.rules: Too many: 129: must have at most 128 items, : Invalid value:`, + `null`, + `some validation rules were not checked because the object was invalid; correct the existing errors to complete validation]`, }, }, {