From fda9ff2f60cebde41c8159733c1adcf5abcc077c Mon Sep 17 00:00:00 2001 From: Volodymyr Boiko Date: Tue, 17 Oct 2023 01:45:10 +0300 Subject: [PATCH] feat: propagate default host configuration files to csi node --- charts/README.md | 1 + charts/latest/csi-driver-nfs-v0.0.0.tgz | Bin 10828 -> 10930 bytes .../templates/csi-nfs-node.yaml | 16 ++++++++++++++++ charts/latest/csi-driver-nfs/values.yaml | 1 + 4 files changed, 18 insertions(+) diff --git a/charts/README.md b/charts/README.md index 93ca1c8c3..42de31dfb 100644 --- a/charts/README.md +++ b/charts/README.md @@ -47,6 +47,7 @@ The following table lists the configurable parameters of the latest NFS CSI Driv | `driver.mountPermissions` | default mounted folder permissions | `0` | `feature.enableFSGroupPolicy` | enable [`fsGroupPolicy`](https://kubernetes.io/blog/2020/12/14/kubernetes-release-1.20-fsgroupchangepolicy-fsgrouppolicy/#allow-csi-drivers-to-declare-support-for-fsgroup-based-permissions) on a k8s 1.20+ cluster | `true` | | `feature.enableInlineVolume` | enable inline volume | `false` | +| `feature.propagateHostMountOptions` | use the default host NFS mount configuration file [`/etc/nfsmount.conf`](https://man7.org/linux/man-pages/man5/nfsmount.conf.5.html) and/or the default host `/etc/nfsmount.d` mount configuration directory as source for mount options | `false` | | `kubeletDir` | alternative kubelet directory | `/var/lib/kubelet` | | `image.nfs.repository` | csi-driver-nfs image | `registry.k8s.io/sig-storage/nfsplugin` | | `image.nfs.tag` | csi-driver-nfs image tag | `latest` | diff --git a/charts/latest/csi-driver-nfs-v0.0.0.tgz b/charts/latest/csi-driver-nfs-v0.0.0.tgz index 4af2ce5cac4184c3a2a53749e78c3fa43c31fae1..e43baa08aec4977a113724b7dca3d8f456ddddff 100644 GIT binary patch delta 10551 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 F0RWe2!WsYo delta 10452 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