From 3f9a454704939f23b0a915ad74b207620843a118 Mon Sep 17 00:00:00 2001 From: Oliver Gould Date: Mon, 11 Dec 2023 14:52:20 +0000 Subject: [PATCH 1/4] Bump min Kubernetes API to v1.22 New versions of the k8s-openapi crate drop support for Kubernetes 1.22. Kubernetes v1.22 has been considered EOL by the upstream project since 2022-07-08. Major cloud providers have EOL'd it as well (GKE's current MSKV is 1.24). This change updates the MSKV to v1.22. It also updates the max version in _test-helpers.sh to v1.28. --- bin/_test-helpers.sh | 4 ++-- charts/linkerd-control-plane/Chart.yaml | 2 +- charts/linkerd-control-plane/README.md | 4 ++-- charts/linkerd-control-plane/README.md.gotmpl | 2 +- charts/linkerd-crds/Chart.yaml | 2 +- charts/linkerd-crds/README.md | 2 +- charts/linkerd2-cni/Chart.yaml | 2 +- charts/linkerd2-cni/README.md | 2 +- jaeger/charts/linkerd-jaeger/Chart.yaml | 2 +- jaeger/charts/linkerd-jaeger/README.md | 2 +- multicluster/charts/linkerd-multicluster-link/Chart.yaml | 2 +- multicluster/charts/linkerd-multicluster-link/README.md | 2 +- multicluster/charts/linkerd-multicluster/Chart.yaml | 2 +- multicluster/charts/linkerd-multicluster/README.md | 2 +- pkg/k8s/api.go | 2 +- policy-controller/Cargo.toml | 2 +- policy-controller/k8s/api/Cargo.toml | 2 +- policy-test/Cargo.toml | 2 +- viz/charts/linkerd-viz/Chart.yaml | 2 +- viz/charts/linkerd-viz/README.md | 2 +- 20 files changed, 22 insertions(+), 22 deletions(-) diff --git a/bin/_test-helpers.sh b/bin/_test-helpers.sh index 60179404545b0..08a92054f0721 100644 --- a/bin/_test-helpers.sh +++ b/bin/_test-helpers.sh @@ -4,8 +4,8 @@ # proper messages set +e -k8s_version_min='+v1.21' -k8s_version_max='+v1.26' +k8s_version_min='+v1.22' +k8s_version_max='+v1.28' bindir=$( cd "${BASH_SOURCE[0]%/*}" && pwd ) testdir="$bindir"/../test/integration diff --git a/charts/linkerd-control-plane/Chart.yaml b/charts/linkerd-control-plane/Chart.yaml index 5b7c42d916f59..e1f77ed28a4e2 100644 --- a/charts/linkerd-control-plane/Chart.yaml +++ b/charts/linkerd-control-plane/Chart.yaml @@ -8,7 +8,7 @@ type: application home: https://linkerd.io keywords: - service-mesh -kubeVersion: ">=1.21.0-0" +kubeVersion: ">=1.22.0-0" name: "linkerd-control-plane" sources: - https://github.com/linkerd/linkerd2/ diff --git a/charts/linkerd-control-plane/README.md b/charts/linkerd-control-plane/README.md index 4d7c5a2cfc0f0..7f3e968736319 100644 --- a/charts/linkerd-control-plane/README.md +++ b/charts/linkerd-control-plane/README.md @@ -11,7 +11,7 @@ for your microservices — with no code change required. ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See +You can run Linkerd on any Kubernetes 1.22+ cluster in a matter of seconds. See the [Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd @@ -135,7 +135,7 @@ extensions: ## Requirements -Kubernetes: `>=1.21.0-0` +Kubernetes: `>=1.22.0-0` | Repository | Name | Version | |------------|------|---------| diff --git a/charts/linkerd-control-plane/README.md.gotmpl b/charts/linkerd-control-plane/README.md.gotmpl index 2d96c3db2a5bc..9b4c6f7f3ed57 100644 --- a/charts/linkerd-control-plane/README.md.gotmpl +++ b/charts/linkerd-control-plane/README.md.gotmpl @@ -9,7 +9,7 @@ ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See +You can run Linkerd on any Kubernetes 1.22+ cluster in a matter of seconds. See the [Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd diff --git a/charts/linkerd-crds/Chart.yaml b/charts/linkerd-crds/Chart.yaml index d8461b3ad1934..1ded5f1470241 100644 --- a/charts/linkerd-crds/Chart.yaml +++ b/charts/linkerd-crds/Chart.yaml @@ -6,7 +6,7 @@ type: application home: https://linkerd.io keywords: - service-mesh -kubeVersion: ">=1.21.0-0" +kubeVersion: ">=1.22.0-0" name: "linkerd-crds" sources: - https://github.com/linkerd/linkerd2/ diff --git a/charts/linkerd-crds/README.md b/charts/linkerd-crds/README.md index 44054212436d9..6c375cb027514 100644 --- a/charts/linkerd-crds/README.md +++ b/charts/linkerd-crds/README.md @@ -60,7 +60,7 @@ helm install linkerd-crds -n linkerd --create-namespace linkerd/linkerd-crds ## Requirements -Kubernetes: `>=1.21.0-0` +Kubernetes: `>=1.22.0-0` | Repository | Name | Version | |------------|------|---------| diff --git a/charts/linkerd2-cni/Chart.yaml b/charts/linkerd2-cni/Chart.yaml index d203eb49fc40d..d13b0726fcd0c 100644 --- a/charts/linkerd2-cni/Chart.yaml +++ b/charts/linkerd2-cni/Chart.yaml @@ -6,7 +6,7 @@ description: | Linkerd [CNI plugin](https://linkerd.io/2/features/cni/) takes care of setting up your pod's network so incoming and outgoing traffic is proxied through the data plane. -kubeVersion: ">=1.21.0-0" +kubeVersion: ">=1.22.0-0" icon: https://linkerd.io/images/logo-only-200h.png name: "linkerd2-cni" version: 30.13.1-edge diff --git a/charts/linkerd2-cni/README.md b/charts/linkerd2-cni/README.md index 30c6e4187a4e2..6b8c84f678dc7 100644 --- a/charts/linkerd2-cni/README.md +++ b/charts/linkerd2-cni/README.md @@ -12,7 +12,7 @@ data plane. ## Requirements -Kubernetes: `>=1.21.0-0` +Kubernetes: `>=1.22.0-0` | Repository | Name | Version | |------------|------|---------| diff --git a/jaeger/charts/linkerd-jaeger/Chart.yaml b/jaeger/charts/linkerd-jaeger/Chart.yaml index 04815d115a213..58ee8f8dd9974 100644 --- a/jaeger/charts/linkerd-jaeger/Chart.yaml +++ b/jaeger/charts/linkerd-jaeger/Chart.yaml @@ -7,7 +7,7 @@ description: | home: https://linkerd.io keywords: - service-mesh -kubeVersion: ">=1.21.0-0" +kubeVersion: ">=1.22.0-0" name: linkerd-jaeger sources: - https://github.com/linkerd/linkerd2/ diff --git a/jaeger/charts/linkerd-jaeger/README.md b/jaeger/charts/linkerd-jaeger/README.md index 9c81177790cbc..dff9b01b8b7e8 100644 --- a/jaeger/charts/linkerd-jaeger/README.md +++ b/jaeger/charts/linkerd-jaeger/README.md @@ -62,7 +62,7 @@ helm install linkerd-jaeger -n linkerd-jaeger --create-namespace linkerd/linkerd ## Requirements -Kubernetes: `>=1.21.0-0` +Kubernetes: `>=1.22.0-0` | Repository | Name | Version | |------------|------|---------| diff --git a/multicluster/charts/linkerd-multicluster-link/Chart.yaml b/multicluster/charts/linkerd-multicluster-link/Chart.yaml index 29ed5883ed23c..70bf12dc74452 100644 --- a/multicluster/charts/linkerd-multicluster-link/Chart.yaml +++ b/multicluster/charts/linkerd-multicluster-link/Chart.yaml @@ -9,7 +9,7 @@ description: | `cluster-credentials` secret and the Link CR, which are not found in this chart. Therefore this chart is not a replacement for that command, and shouldn't be used as-is unless you really know what you're doing ;-) -kubeVersion: ">=1.21.0-0" +kubeVersion: ">=1.22.0-0" icon: https://linkerd.io/images/logo-only-200h.png name: "linkerd-multicluster-link" version: 0.2.0 diff --git a/multicluster/charts/linkerd-multicluster-link/README.md b/multicluster/charts/linkerd-multicluster-link/README.md index be06b8cfebbe9..24d6fb3d685eb 100644 --- a/multicluster/charts/linkerd-multicluster-link/README.md +++ b/multicluster/charts/linkerd-multicluster-link/README.md @@ -15,7 +15,7 @@ shouldn't be used as-is unless you really know what you're doing ;-) ## Requirements -Kubernetes: `>=1.21.0-0` +Kubernetes: `>=1.22.0-0` | Repository | Name | Version | |------------|------|---------| diff --git a/multicluster/charts/linkerd-multicluster/Chart.yaml b/multicluster/charts/linkerd-multicluster/Chart.yaml index de03f06cf5427..589cb19420483 100644 --- a/multicluster/charts/linkerd-multicluster/Chart.yaml +++ b/multicluster/charts/linkerd-multicluster/Chart.yaml @@ -7,7 +7,7 @@ description: | home: https://linkerd.io keywords: - service-mesh -kubeVersion: ">=1.21.0-0" +kubeVersion: ">=1.22.0-0" name: "linkerd-multicluster" sources: - https://github.com/linkerd/linkerd2/ diff --git a/multicluster/charts/linkerd-multicluster/README.md b/multicluster/charts/linkerd-multicluster/README.md index 2d9bbd5201425..1e5b8b1e19bb0 100644 --- a/multicluster/charts/linkerd-multicluster/README.md +++ b/multicluster/charts/linkerd-multicluster/README.md @@ -60,7 +60,7 @@ helm install linkerd-multicluster -n linkerd-multicluster --create-namespace lin ## Requirements -Kubernetes: `>=1.21.0-0` +Kubernetes: `>=1.22.0-0` | Repository | Name | Version | |------------|------|---------| diff --git a/pkg/k8s/api.go b/pkg/k8s/api.go index 85a4ac22920a1..6ace4a1a957af 100644 --- a/pkg/k8s/api.go +++ b/pkg/k8s/api.go @@ -27,7 +27,7 @@ import ( _ "k8s.io/client-go/plugin/pkg/client/auth" ) -var minAPIVersion = [3]int{1, 21, 0} +var minAPIVersion = [3]int{1, 22, 0} // KubernetesAPI provides a client for accessing a Kubernetes cluster. // TODO: support ServiceProfile ClientSet. A prerequisite is moving the diff --git a/policy-controller/Cargo.toml b/policy-controller/Cargo.toml index a92cbefd68360..26769914273f9 100644 --- a/policy-controller/Cargo.toml +++ b/policy-controller/Cargo.toml @@ -18,7 +18,7 @@ async-trait = "0.1" drain = "0.1" futures = { version = "0.3", default-features = false } k8s-gateway-api = "0.13" -k8s-openapi = { version = "0.19", features = ["v1_20"] } +k8s-openapi = { version = "0.19", features = ["v1_22"] } hyper = { version = "0.14", features = ["http1", "http2", "runtime", "server"] } ipnet = { version = "2", default-features = false } linkerd-policy-controller-core = { path = "./core" } diff --git a/policy-controller/k8s/api/Cargo.toml b/policy-controller/k8s/api/Cargo.toml index a6e5b7ed94fcb..3b97850ef38e2 100644 --- a/policy-controller/k8s/api/Cargo.toml +++ b/policy-controller/k8s/api/Cargo.toml @@ -7,7 +7,7 @@ publish = false [dependencies] k8s-openapi = { version = "0.19", default-features = false, features = [ - "v1_20", + "v1_22", ] } k8s-gateway-api = "0.13" kube = { version = "0.85", default-features = false, features = [ diff --git a/policy-test/Cargo.toml b/policy-test/Cargo.toml index 60f3bcbda95cf..c75c45adc17df 100644 --- a/policy-test/Cargo.toml +++ b/policy-test/Cargo.toml @@ -11,7 +11,7 @@ hyper = { version = "0.14", features = ["client", "http2"] } futures = { version = "0.3", default-features = false } ipnet = "2" k8s-gateway-api = "0.13" -k8s-openapi = { version = "0.19", features = ["v1_20"] } +k8s-openapi = { version = "0.19", features = ["v1_22"] } linkerd-policy-controller-core = { path = "../policy-controller/core" } linkerd-policy-controller-k8s-api = { path = "../policy-controller/k8s/api" } maplit = "1" diff --git a/viz/charts/linkerd-viz/Chart.yaml b/viz/charts/linkerd-viz/Chart.yaml index 453d67a523c33..39713e42fe0bb 100644 --- a/viz/charts/linkerd-viz/Chart.yaml +++ b/viz/charts/linkerd-viz/Chart.yaml @@ -7,7 +7,7 @@ description: | home: https://linkerd.io keywords: - service-mesh -kubeVersion: ">=1.21.0-0" +kubeVersion: ">=1.22.0-0" name: "linkerd-viz" sources: - https://github.com/linkerd/linkerd2/ diff --git a/viz/charts/linkerd-viz/README.md b/viz/charts/linkerd-viz/README.md index 4385f35663d9c..8b6d769673f55 100644 --- a/viz/charts/linkerd-viz/README.md +++ b/viz/charts/linkerd-viz/README.md @@ -60,7 +60,7 @@ helm install linkerd-viz -n linkerd-viz --create-namespace linkerd/linkerd-viz ## Requirements -Kubernetes: `>=1.21.0-0` +Kubernetes: `>=1.22.0-0` | Repository | Name | Version | |------------|------|---------| From 3c7a55b50478b1b9f7b5fc68246378a902643f79 Mon Sep 17 00:00:00 2001 From: Oliver Gould Date: Mon, 11 Dec 2023 15:47:07 +0000 Subject: [PATCH 2/4] helm: Remove k8s version reference in README blurb It's included in the version info section. --- charts/linkerd-control-plane/README.md | 4 ++-- charts/linkerd-control-plane/README.md.gotmpl | 4 ++-- charts/linkerd-crds/README.md | 4 ++-- charts/linkerd-crds/README.md.gotmpl | 4 ++-- jaeger/charts/linkerd-jaeger/README.md | 2 +- jaeger/charts/linkerd-jaeger/README.md.gotmpl | 2 +- multicluster/charts/linkerd-multicluster/README.md | 4 ++-- multicluster/charts/linkerd-multicluster/README.md.gotmpl | 4 ++-- viz/charts/linkerd-viz/README.md | 4 ++-- viz/charts/linkerd-viz/README.md.gotmpl | 4 ++-- 10 files changed, 18 insertions(+), 18 deletions(-) diff --git a/charts/linkerd-control-plane/README.md b/charts/linkerd-control-plane/README.md index 7f3e968736319..c2300e03c9c38 100644 --- a/charts/linkerd-control-plane/README.md +++ b/charts/linkerd-control-plane/README.md @@ -11,8 +11,8 @@ for your microservices — with no code change required. ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.22+ cluster in a matter of seconds. See -the [Linkerd Getting Started Guide][getting-started] for how. +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the +[Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd docs][linkerd-docs]. diff --git a/charts/linkerd-control-plane/README.md.gotmpl b/charts/linkerd-control-plane/README.md.gotmpl index 9b4c6f7f3ed57..a574d8f0ed0ca 100644 --- a/charts/linkerd-control-plane/README.md.gotmpl +++ b/charts/linkerd-control-plane/README.md.gotmpl @@ -9,8 +9,8 @@ ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.22+ cluster in a matter of seconds. See -the [Linkerd Getting Started Guide][getting-started] for how. +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the +[Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd docs][linkerd-docs]. diff --git a/charts/linkerd-crds/README.md b/charts/linkerd-crds/README.md index 6c375cb027514..8f274c75d7a9e 100644 --- a/charts/linkerd-crds/README.md +++ b/charts/linkerd-crds/README.md @@ -10,8 +10,8 @@ for your microservices — with no code change required. ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See -the [Linkerd Getting Started Guide][getting-started] for how. +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the +[Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd docs][linkerd-docs]. diff --git a/charts/linkerd-crds/README.md.gotmpl b/charts/linkerd-crds/README.md.gotmpl index b396a6fc54829..dc33d08d878d9 100644 --- a/charts/linkerd-crds/README.md.gotmpl +++ b/charts/linkerd-crds/README.md.gotmpl @@ -9,8 +9,8 @@ ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See -the [Linkerd Getting Started Guide][getting-started] for how. +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the +[Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd docs][linkerd-docs]. diff --git a/jaeger/charts/linkerd-jaeger/README.md b/jaeger/charts/linkerd-jaeger/README.md index dff9b01b8b7e8..683b2e8a5a371 100644 --- a/jaeger/charts/linkerd-jaeger/README.md +++ b/jaeger/charts/linkerd-jaeger/README.md @@ -11,7 +11,7 @@ OpenCensus and Jaeger. ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the [Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd diff --git a/jaeger/charts/linkerd-jaeger/README.md.gotmpl b/jaeger/charts/linkerd-jaeger/README.md.gotmpl index 17c896a8e7d24..f33b6dffaddb1 100644 --- a/jaeger/charts/linkerd-jaeger/README.md.gotmpl +++ b/jaeger/charts/linkerd-jaeger/README.md.gotmpl @@ -9,7 +9,7 @@ ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the [Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd diff --git a/multicluster/charts/linkerd-multicluster/README.md b/multicluster/charts/linkerd-multicluster/README.md index 1e5b8b1e19bb0..bab404e7b7888 100644 --- a/multicluster/charts/linkerd-multicluster/README.md +++ b/multicluster/charts/linkerd-multicluster/README.md @@ -11,8 +11,8 @@ linking to remote clusters ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See -the [Linkerd Getting Started Guide][getting-started] for how. +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the +[Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd docs][linkerd-docs]. diff --git a/multicluster/charts/linkerd-multicluster/README.md.gotmpl b/multicluster/charts/linkerd-multicluster/README.md.gotmpl index 25fcce60ebc3e..ded69c635c474 100644 --- a/multicluster/charts/linkerd-multicluster/README.md.gotmpl +++ b/multicluster/charts/linkerd-multicluster/README.md.gotmpl @@ -9,8 +9,8 @@ ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See -the [Linkerd Getting Started Guide][getting-started] for how. +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the +[Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd docs][linkerd-docs]. diff --git a/viz/charts/linkerd-viz/README.md b/viz/charts/linkerd-viz/README.md index 8b6d769673f55..0d0ecb3d9445d 100644 --- a/viz/charts/linkerd-viz/README.md +++ b/viz/charts/linkerd-viz/README.md @@ -11,8 +11,8 @@ components for Linkerd. ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See -the [Linkerd Getting Started Guide][getting-started] for how. +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the +[Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd docs][linkerd-docs]. diff --git a/viz/charts/linkerd-viz/README.md.gotmpl b/viz/charts/linkerd-viz/README.md.gotmpl index 72f7e7cbde450..dba369bd7b1bd 100644 --- a/viz/charts/linkerd-viz/README.md.gotmpl +++ b/viz/charts/linkerd-viz/README.md.gotmpl @@ -9,8 +9,8 @@ ## Quickstart and documentation -You can run Linkerd on any Kubernetes 1.21+ cluster in a matter of seconds. See -the [Linkerd Getting Started Guide][getting-started] for how. +You can run Linkerd on any Kubernetes cluster in a matter of seconds. See the +[Linkerd Getting Started Guide][getting-started] for how. For more comprehensive documentation, start with the [Linkerd docs][linkerd-docs]. From b62ca6d0dd50a51fdf7cc6591fefbbdd59dff1a5 Mon Sep 17 00:00:00 2001 From: Oliver Gould Date: Mon, 11 Dec 2023 19:11:01 +0000 Subject: [PATCH 3/4] bump versino in policy test --- .github/workflows/integration.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 775c3667ce21a..980b9a3e2c2a3 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -171,7 +171,7 @@ jobs: strategy: matrix: k8s: - - v1.21 + - v1.22 - v1.28 steps: - uses: extractions/setup-just@69d82fb0233557aec017ef13706851d0694e0f1d From 68b887d723950ac157e5e5bb25cee0551f8e0ac2 Mon Sep 17 00:00:00 2001 From: Oliver Gould Date: Mon, 11 Dec 2023 19:39:50 +0000 Subject: [PATCH 4/4] bump versino in mc test --- .github/workflows/integration.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 980b9a3e2c2a3..784f3b771e5c4 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -350,7 +350,7 @@ jobs: strategy: matrix: k8s: - - v1.21 + - v1.22 - v1.28 steps: - uses: extractions/setup-just@69d82fb0233557aec017ef13706851d0694e0f1d