From c0d124945d53bbe4df56d74315516e5873acb108 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 9 Jul 2025 12:23:21 +0000 Subject: [PATCH 1/3] Initial plan From eca3f41776e492934ba43bbf497a9bcff4925618 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 9 Jul 2025 12:33:27 +0000 Subject: [PATCH 2/3] Add support for --allow-downgrades flag in init container Co-authored-by: andyzhangx <4178417+andyzhangx@users.noreply.github.com> --- README.md | 5 +++++ .../blob-csi-driver/templates/csi-blob-node.yaml | 4 ++++ charts/latest/blob-csi-driver/values.yaml | 2 ++ pkg/blobfuse-proxy/install-proxy.sh | 12 ++++++++++-- 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ddf64ee6c..ace5239de 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,11 @@ This option does not depend on cloud provider config file, supports cross subscr > If you want to install a lower version of blobfuse2 than the current version, you can add ` --allow-downgrades` to the `BLOBFUSE2_VERSION` value, e.g. > ```console > kubectl patch daemonset csi-blob-node -n kube-system -p '{"spec":{"template":{"spec":{"initContainers":[{"env":[{"name":"INSTALL_BLOBFUSE2","value":"true"},{"name":"BLOBFUSE2_VERSION","value":"2.3.0 --allow-downgrades"}],"name":"install-blobfuse-proxy"}]}}}}' +> ``` +> +> Alternatively, when using Helm charts, you can use the dedicated `allowBlobfuse2Downgrades` parameter for cleaner configuration: +> ```console +> helm upgrade --set node.blobfuseProxy.blobfuse2Version="2.3.0" --set node.blobfuseProxy.allowBlobfuse2Downgrades=true blob-csi-driver charts/latest/blob-csi-driver > ``` - install by [helm charts](./charts) diff --git a/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml b/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml index 2cb7d47d0..84b01ac09 100644 --- a/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml +++ b/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml @@ -88,10 +88,14 @@ spec: value: "{{ .Values.node.blobfuseProxy.installBlobfuse }}" - name: BLOBFUSE_VERSION value: "{{ .Values.node.blobfuseProxy.blobfuseVersion }}" + - name: ALLOW_BLOBFUSE_DOWNGRADES + value: "{{ .Values.node.blobfuseProxy.allowBlobfuseDowngrades }}" - name: INSTALL_BLOBFUSE2 value: "{{ .Values.node.blobfuseProxy.installBlobfuse2 }}" - name: BLOBFUSE2_VERSION value: "{{ .Values.node.blobfuseProxy.blobfuse2Version }}" + - name: ALLOW_BLOBFUSE2_DOWNGRADES + value: "{{ .Values.node.blobfuseProxy.allowBlobfuse2Downgrades }}" - name: INSTALL_BLOBFUSE_PROXY value: "{{ .Values.node.enableBlobfuseProxy }}" - name: SET_MAX_OPEN_FILE_NUM diff --git a/charts/latest/blob-csi-driver/values.yaml b/charts/latest/blob-csi-driver/values.yaml index bcbbd047c..5c23f73b3 100644 --- a/charts/latest/blob-csi-driver/values.yaml +++ b/charts/latest/blob-csi-driver/values.yaml @@ -122,8 +122,10 @@ node: blobfuseProxy: installBlobfuse: false blobfuseVersion: "1.4.5" + allowBlobfuseDowngrades: false installBlobfuse2: true blobfuse2Version: "2.4.1" + allowBlobfuse2Downgrades: false setMaxOpenFileNum: true maxOpenFileNum: "9000000" disableUpdateDB: true diff --git a/pkg/blobfuse-proxy/install-proxy.sh b/pkg/blobfuse-proxy/install-proxy.sh index c4a4df741..8f514edec 100644 --- a/pkg/blobfuse-proxy/install-proxy.sh +++ b/pkg/blobfuse-proxy/install-proxy.sh @@ -54,7 +54,11 @@ then echo "install blobfuse with latest version" pkg_list="${pkg_list} blobfuse" else - pkg_list="${pkg_list} blobfuse=${BLOBFUSE_VERSION}" + blobfuse_install_str="blobfuse=${BLOBFUSE_VERSION}" + if [ "${ALLOW_BLOBFUSE_DOWNGRADES}" = "true" ]; then + blobfuse_install_str="${blobfuse_install_str} --allow-downgrades" + fi + pkg_list="${pkg_list} ${blobfuse_install_str}" fi fi @@ -73,7 +77,11 @@ then echo "install blobfuse2 with latest version" pkg_list="${pkg_list} blobfuse2" else - pkg_list="${pkg_list} blobfuse2=${BLOBFUSE2_VERSION}" + blobfuse2_install_str="blobfuse2=${BLOBFUSE2_VERSION}" + if [ "${ALLOW_BLOBFUSE2_DOWNGRADES}" = "true" ]; then + blobfuse2_install_str="${blobfuse2_install_str} --allow-downgrades" + fi + pkg_list="${pkg_list} ${blobfuse2_install_str}" fi fi From 570388f97be9ffb7a6a7bfcdd88d697530152a7b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 9 Jul 2025 12:50:14 +0000 Subject: [PATCH 3/3] Remove deprecated blobfuse v1 downgrade options Co-authored-by: andyzhangx <4178417+andyzhangx@users.noreply.github.com> --- charts/latest/blob-csi-driver/templates/csi-blob-node.yaml | 2 -- charts/latest/blob-csi-driver/values.yaml | 1 - pkg/blobfuse-proxy/install-proxy.sh | 6 +----- 3 files changed, 1 insertion(+), 8 deletions(-) diff --git a/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml b/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml index 84b01ac09..3058e33d7 100644 --- a/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml +++ b/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml @@ -88,8 +88,6 @@ spec: value: "{{ .Values.node.blobfuseProxy.installBlobfuse }}" - name: BLOBFUSE_VERSION value: "{{ .Values.node.blobfuseProxy.blobfuseVersion }}" - - name: ALLOW_BLOBFUSE_DOWNGRADES - value: "{{ .Values.node.blobfuseProxy.allowBlobfuseDowngrades }}" - name: INSTALL_BLOBFUSE2 value: "{{ .Values.node.blobfuseProxy.installBlobfuse2 }}" - name: BLOBFUSE2_VERSION diff --git a/charts/latest/blob-csi-driver/values.yaml b/charts/latest/blob-csi-driver/values.yaml index 5c23f73b3..797208b9b 100644 --- a/charts/latest/blob-csi-driver/values.yaml +++ b/charts/latest/blob-csi-driver/values.yaml @@ -122,7 +122,6 @@ node: blobfuseProxy: installBlobfuse: false blobfuseVersion: "1.4.5" - allowBlobfuseDowngrades: false installBlobfuse2: true blobfuse2Version: "2.4.1" allowBlobfuse2Downgrades: false diff --git a/pkg/blobfuse-proxy/install-proxy.sh b/pkg/blobfuse-proxy/install-proxy.sh index 8f514edec..09e851f66 100644 --- a/pkg/blobfuse-proxy/install-proxy.sh +++ b/pkg/blobfuse-proxy/install-proxy.sh @@ -54,11 +54,7 @@ then echo "install blobfuse with latest version" pkg_list="${pkg_list} blobfuse" else - blobfuse_install_str="blobfuse=${BLOBFUSE_VERSION}" - if [ "${ALLOW_BLOBFUSE_DOWNGRADES}" = "true" ]; then - blobfuse_install_str="${blobfuse_install_str} --allow-downgrades" - fi - pkg_list="${pkg_list} ${blobfuse_install_str}" + pkg_list="${pkg_list} blobfuse=${BLOBFUSE_VERSION}" fi fi