From 040481cd800481b38a315ea1809ddd7eee1bf9bb Mon Sep 17 00:00:00 2001 From: Alejandro Pedraza Date: Fri, 2 Jun 2023 09:10:04 -0500 Subject: [PATCH] linkerd-cni v1.2.0 (#10973) This release stops using the "interface" mode, and instead wait till another CNI plugin drops a proper network config and then append the linkerd CNI config to it. This avoids having pods start before proper networking is established in the node. --- charts/linkerd2-cni/README.md | 2 +- charts/linkerd2-cni/values.yaml | 2 +- cli/cmd/install-cni-plugin_test.go | 2 +- cli/cmd/install_cni_helm_test.go | 2 +- cli/cmd/testdata/install-cni-plugin_default.golden | 4 ++-- cli/cmd/testdata/install-cni-plugin_fully_configured.golden | 4 ++-- .../install-cni-plugin_fully_configured_equal_dsts.golden | 4 ++-- .../install-cni-plugin_fully_configured_no_namespace.golden | 4 ++-- cli/cmd/testdata/install-cni-plugin_skip_ports.golden | 4 ++-- cli/cmd/testdata/install_cni_helm_default_output.golden | 2 +- cli/cmd/testdata/install_cni_helm_override_output.golden | 2 +- cni-plugin/test/install-cni_test.go | 2 +- pkg/healthcheck/healthcheck_test.go | 2 +- pkg/version/version.go | 2 +- 14 files changed, 19 insertions(+), 19 deletions(-) diff --git a/charts/linkerd2-cni/README.md b/charts/linkerd2-cni/README.md index d055311baac16..2e4885d03af67 100644 --- a/charts/linkerd2-cni/README.md +++ b/charts/linkerd2-cni/README.md @@ -31,7 +31,7 @@ Kubernetes: `>=1.21.0-0` | ignoreOutboundPorts | string | `""` | Default set of outbound ports to skip via iptables | | image.name | string | `"cr.l5d.io/linkerd/cni-plugin"` | Docker image for the CNI plugin | | image.pullPolicy | string | `"IfNotPresent"` | Pull policy for the linkerd-cni container | -| image.version | string | `"v1.1.3"` | Tag for the CNI container Docker image | +| image.version | string | `"v1.2.0"` | Tag for the CNI container Docker image | | imagePullSecrets | list | `[]` | | | inboundProxyPort | int | `4143` | Inbound port for the proxy container | | logLevel | string | `"info"` | Log level for the CNI plugin | diff --git a/charts/linkerd2-cni/values.yaml b/charts/linkerd2-cni/values.yaml index 9010d3a954990..fdc5a335b931c 100644 --- a/charts/linkerd2-cni/values.yaml +++ b/charts/linkerd2-cni/values.yaml @@ -53,7 +53,7 @@ image: # -- Docker image for the CNI plugin name: "cr.l5d.io/linkerd/cni-plugin" # -- Tag for the CNI container Docker image - version: "v1.1.3" + version: "v1.2.0" # -- Pull policy for the linkerd-cni container pullPolicy: IfNotPresent diff --git a/cli/cmd/install-cni-plugin_test.go b/cli/cmd/install-cni-plugin_test.go index cd6b2ed9c9d1f..66b2282c1f7cb 100644 --- a/cli/cmd/install-cni-plugin_test.go +++ b/cli/cmd/install-cni-plugin_test.go @@ -16,7 +16,7 @@ func TestRenderCNIPlugin(t *testing.T) { image := cniPluginImage{ name: "my-docker-registry.io/awesome/cni-plugin-test-image", - version: "v1.1.3", + version: "v1.2.0", pullPolicy: nil, } fullyConfiguredOptions := &cniPluginOptions{ diff --git a/cli/cmd/install_cni_helm_test.go b/cli/cmd/install_cni_helm_test.go index 847f36b8f656b..cd3f5dda190c5 100644 --- a/cli/cmd/install_cni_helm_test.go +++ b/cli/cmd/install_cni_helm_test.go @@ -35,7 +35,7 @@ func TestRenderCniHelm(t *testing.T) { "logLevel": "debug", "image": { "name": "cr.l5d.io/linkerd/cni-plugin", - "version": "v1.1.3" + "version": "v1.2.0" }, "proxyUID": 1111, "destCNINetDir": "/etc/cni/net.d-test", diff --git a/cli/cmd/testdata/install-cni-plugin_default.golden b/cli/cmd/testdata/install-cni-plugin_default.golden index 5350d6d109908..cec50d7421d82 100644 --- a/cli/cmd/testdata/install-cni-plugin_default.golden +++ b/cli/cmd/testdata/install-cni-plugin_default.golden @@ -119,8 +119,8 @@ spec: # script copies the files into place and then sleeps so # that Kubernetes doesn't keep trying to restart it. - name: install-cni - image: cr.l5d.io/linkerd/cni-plugin:v1.1.3 - imagePullPolicy: + image: cr.l5d.io/linkerd/cni-plugin:v1.2.0 + imagePullPolicy: env: - name: DEST_CNI_NET_DIR valueFrom: diff --git a/cli/cmd/testdata/install-cni-plugin_fully_configured.golden b/cli/cmd/testdata/install-cni-plugin_fully_configured.golden index 8552118a53615..df41440f244f6 100644 --- a/cli/cmd/testdata/install-cni-plugin_fully_configured.golden +++ b/cli/cmd/testdata/install-cni-plugin_fully_configured.golden @@ -120,8 +120,8 @@ spec: # script copies the files into place and then sleeps so # that Kubernetes doesn't keep trying to restart it. - name: install-cni - image: my-docker-registry.io/awesome/cni-plugin-test-image:v1.1.3 - imagePullPolicy: + image: my-docker-registry.io/awesome/cni-plugin-test-image:v1.2.0 + imagePullPolicy: env: - name: DEST_CNI_NET_DIR valueFrom: diff --git a/cli/cmd/testdata/install-cni-plugin_fully_configured_equal_dsts.golden b/cli/cmd/testdata/install-cni-plugin_fully_configured_equal_dsts.golden index 095022b732e1a..89164ee18b96f 100644 --- a/cli/cmd/testdata/install-cni-plugin_fully_configured_equal_dsts.golden +++ b/cli/cmd/testdata/install-cni-plugin_fully_configured_equal_dsts.golden @@ -120,8 +120,8 @@ spec: # script copies the files into place and then sleeps so # that Kubernetes doesn't keep trying to restart it. - name: install-cni - image: my-docker-registry.io/awesome/cni-plugin-test-image:v1.1.3 - imagePullPolicy: + image: my-docker-registry.io/awesome/cni-plugin-test-image:v1.2.0 + imagePullPolicy: env: - name: DEST_CNI_NET_DIR valueFrom: diff --git a/cli/cmd/testdata/install-cni-plugin_fully_configured_no_namespace.golden b/cli/cmd/testdata/install-cni-plugin_fully_configured_no_namespace.golden index 8552118a53615..df41440f244f6 100644 --- a/cli/cmd/testdata/install-cni-plugin_fully_configured_no_namespace.golden +++ b/cli/cmd/testdata/install-cni-plugin_fully_configured_no_namespace.golden @@ -120,8 +120,8 @@ spec: # script copies the files into place and then sleeps so # that Kubernetes doesn't keep trying to restart it. - name: install-cni - image: my-docker-registry.io/awesome/cni-plugin-test-image:v1.1.3 - imagePullPolicy: + image: my-docker-registry.io/awesome/cni-plugin-test-image:v1.2.0 + imagePullPolicy: env: - name: DEST_CNI_NET_DIR valueFrom: diff --git a/cli/cmd/testdata/install-cni-plugin_skip_ports.golden b/cli/cmd/testdata/install-cni-plugin_skip_ports.golden index 248937f5623d5..67722b35464eb 100644 --- a/cli/cmd/testdata/install-cni-plugin_skip_ports.golden +++ b/cli/cmd/testdata/install-cni-plugin_skip_ports.golden @@ -120,8 +120,8 @@ spec: # script copies the files into place and then sleeps so # that Kubernetes doesn't keep trying to restart it. - name: install-cni - image: cr.l5d.io/linkerd/cni-plugin:v1.1.3 - imagePullPolicy: + image: cr.l5d.io/linkerd/cni-plugin:v1.2.0 + imagePullPolicy: env: - name: DEST_CNI_NET_DIR valueFrom: diff --git a/cli/cmd/testdata/install_cni_helm_default_output.golden b/cli/cmd/testdata/install_cni_helm_default_output.golden index bf8b7a9a4212f..fbd9a89c55b88 100644 --- a/cli/cmd/testdata/install_cni_helm_default_output.golden +++ b/cli/cmd/testdata/install_cni_helm_default_output.golden @@ -112,7 +112,7 @@ spec: # script copies the files into place and then sleeps so # that Kubernetes doesn't keep trying to restart it. - name: install-cni - image: cr.l5d.io/linkerd/cni-plugin:v1.1.3 + image: cr.l5d.io/linkerd/cni-plugin:v1.2.0 imagePullPolicy: IfNotPresent env: - name: DEST_CNI_NET_DIR diff --git a/cli/cmd/testdata/install_cni_helm_override_output.golden b/cli/cmd/testdata/install_cni_helm_override_output.golden index 7a9da30811428..2190e43710a41 100644 --- a/cli/cmd/testdata/install_cni_helm_override_output.golden +++ b/cli/cmd/testdata/install_cni_helm_override_output.golden @@ -113,7 +113,7 @@ spec: # script copies the files into place and then sleeps so # that Kubernetes doesn't keep trying to restart it. - name: install-cni - image: cr.l5d.io/linkerd/cni-plugin:v1.1.3 + image: cr.l5d.io/linkerd/cni-plugin:v1.2.0 imagePullPolicy: IfNotPresent env: - name: DEST_CNI_NET_DIR diff --git a/cni-plugin/test/install-cni_test.go b/cni-plugin/test/install-cni_test.go index bb0b2d6e24165..850392d64d2e8 100644 --- a/cni-plugin/test/install-cni_test.go +++ b/cni-plugin/test/install-cni_test.go @@ -147,7 +147,7 @@ func populateK8sCreds(wd string, tempK8sSvcAcctDir string, t *testing.T) { // startDocker starts a test Docker container and runs the install-cni.sh script. func startDocker(testNum int, wd string, testWorkRootDir string, tempCNINetDir string, tempCNIBinDir string, tempK8sSvcAcctDir string, t *testing.T) string { - dockerImage := env("HUB", "cr.l5d.io/linkerd") + "/cni-plugin:" + env("CNI_PLUGIN_VERSION", "v1.1.3") + dockerImage := env("HUB", "cr.l5d.io/linkerd") + "/cni-plugin:" + env("CNI_PLUGIN_VERSION", "v1.2.0") errFileName := testWorkRootDir + "/docker_run_stderr" // Build arguments list by picking whatever is necessary from the environment. diff --git a/pkg/healthcheck/healthcheck_test.go b/pkg/healthcheck/healthcheck_test.go index a53fb5cff84c1..a8cd0a170f5e7 100644 --- a/pkg/healthcheck/healthcheck_test.go +++ b/pkg/healthcheck/healthcheck_test.go @@ -2422,7 +2422,7 @@ spec: serviceAccountName: linkerd-cni containers: - name: install-cni - image: cr.l5d.io/linkerd/cni-plugin:v1.1.3 + image: cr.l5d.io/linkerd/cni-plugin:v1.2.0 env: - name: DEST_CNI_NET_DIR valueFrom: diff --git a/pkg/version/version.go b/pkg/version/version.go index 6a586e251fef1..72202b08cea9a 100644 --- a/pkg/version/version.go +++ b/pkg/version/version.go @@ -16,7 +16,7 @@ var Version = undefinedVersion // https://github.com/linkerd/linkerd2-proxy-init This has to be kept in sync // with the default version in the control plane's values.yaml. var ProxyInitVersion = "v2.2.1" -var LinkerdCNIVersion = "v1.1.3" +var LinkerdCNIVersion = "v1.2.0" const ( // undefinedVersion should take the form `channel-version` to conform to