spec
spec copied to clipboard
Does CSI Spec supports subPath mounts?
Hi,
Does CSI supports subPath mounts as shown in the volume subPath example?
I am testing our CSI Driver with E2E test cases and encountered test failures related to subPath as below:
[Fail] External Storage [Driver: csi.quobyte.com] [Testpattern: Dynamic PV (default fs)] subPath [It] should fail if subpath with backstepping is outside the volume [Slow]
/workspace/anago-v1.16.2-beta.0.19+c97fe5036ef3df/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/storage/testsuites/subpath.go:728
[Fail] External Storage [Driver: csi.quobyte.com] [Testpattern: Dynamic PV (default fs)] subPath [It] should support existing directory
/workspace/anago-v1.16.2-beta.0.19+c97fe5036ef3df/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/framework/util.go:1667
[Fail] External Storage [Driver: csi.quobyte.com] [Testpattern: Dynamic PV (default fs)] subPath [It] should support non-existent path
/workspace/anago-v1.16.2-beta.0.19+c97fe5036ef3df/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/framework/util.go:1667
[Fail] External Storage [Driver: csi.quobyte.com] [Testpattern: Dynamic PV (default fs)] subPath [It] should support file as subpath [LinuxOnly]
/workspace/anago-v1.16.2-beta.0.19+c97fe5036ef3df/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/framework/util.go:1667
[Fail] External Storage [Driver: csi.quobyte.com] [Testpattern: Dynamic PV (default fs)] subPath [It] should fail if non-existent subpath is outside the volume [Slow][LinuxOnly]
/workspace/anago-v1.16.2-beta.0.19+c97fe5036ef3df/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/storage/testsuites/subpath.go:728
[Fail] External Storage [Driver: csi.quobyte.com] [Testpattern: Dynamic PV (default fs)] subPath [It] should support existing single file [LinuxOnly]
As per my understanding, NodePublishVolumeReq mounts the whole volume for the requested subPath. The NodePublishVolumeReq
does not have any field that conveys the subPath information to the vendor's CSI driver, how can the driver infer if it is whole volume mount or specific subPath mount?