@@ -31,7 +31,7 @@ type nfsDriver struct {
31
31
32
32
//ids *identityServer
33
33
ns * nodeServer
34
- cap [] * csi.VolumeCapability_AccessMode
34
+ cap map [ csi.VolumeCapability_AccessMode_Mode ] bool
35
35
cscap []* csi.ControllerServiceCapability
36
36
}
37
37
@@ -51,9 +51,18 @@ func NewNFSdriver(nodeID, endpoint string) *nfsDriver {
51
51
version : version ,
52
52
nodeID : nodeID ,
53
53
endpoint : endpoint ,
54
+ cap : map [csi.VolumeCapability_AccessMode_Mode ]bool {},
54
55
}
55
56
56
- n .AddVolumeCapabilityAccessModes ([]csi.VolumeCapability_AccessMode_Mode {csi .VolumeCapability_AccessMode_MULTI_NODE_MULTI_WRITER })
57
+ vcam := []csi.VolumeCapability_AccessMode_Mode {
58
+ csi .VolumeCapability_AccessMode_SINGLE_NODE_WRITER ,
59
+ csi .VolumeCapability_AccessMode_SINGLE_NODE_READER_ONLY ,
60
+ csi .VolumeCapability_AccessMode_MULTI_NODE_READER_ONLY ,
61
+ csi .VolumeCapability_AccessMode_MULTI_NODE_SINGLE_WRITER ,
62
+ csi .VolumeCapability_AccessMode_MULTI_NODE_MULTI_WRITER ,
63
+ }
64
+ n .AddVolumeCapabilityAccessModes (vcam )
65
+
57
66
// NFS plugin does not support ControllerServiceCapability now.
58
67
// If support is added, it should set to appropriate
59
68
// ControllerServiceCapability RPC types.
@@ -86,8 +95,8 @@ func (n *nfsDriver) AddVolumeCapabilityAccessModes(vc []csi.VolumeCapability_Acc
86
95
for _ , c := range vc {
87
96
glog .Infof ("Enabling volume access mode: %v" , c .String ())
88
97
vca = append (vca , & csi.VolumeCapability_AccessMode {Mode : c })
98
+ n .cap [c ] = true
89
99
}
90
- n .cap = vca
91
100
return vca
92
101
}
93
102
0 commit comments