fix: ValidateVolumeCapabilities
This commit is contained in:
parent
f9faadf9c2
commit
9b3e1cd174
2
.github/workflows/static.yaml
vendored
2
.github/workflows/static.yaml
vendored
@ -12,7 +12,7 @@ jobs:
|
|||||||
- name: Run linter
|
- name: Run linter
|
||||||
uses: golangci/golangci-lint-action@v2
|
uses: golangci/golangci-lint-action@v2
|
||||||
with:
|
with:
|
||||||
version: v1.29
|
version: v1.31
|
||||||
args: -E=gofmt,deadcode,unused,varcheck,ineffassign,golint,misspell --timeout=30m0s
|
args: -E=gofmt,deadcode,unused,varcheck,ineffassign,golint,misspell --timeout=30m0s
|
||||||
verify-helm:
|
verify-helm:
|
||||||
name: Verify Helm
|
name: Verify Helm
|
||||||
|
|||||||
@ -178,8 +178,12 @@ func (cs *ControllerServer) ValidateVolumeCapabilities(ctx context.Context, req
|
|||||||
return nil, status.Error(codes.InvalidArgument, "Volume capabilities missing in request")
|
return nil, status.Error(codes.InvalidArgument, "Volume capabilities missing in request")
|
||||||
}
|
}
|
||||||
|
|
||||||
// supports all AccessModes, no need to check capabilities here
|
return &csi.ValidateVolumeCapabilitiesResponse{
|
||||||
return &csi.ValidateVolumeCapabilitiesResponse{Message: ""}, nil
|
Confirmed: &csi.ValidateVolumeCapabilitiesResponse_Confirmed{
|
||||||
|
VolumeCapabilities: req.GetVolumeCapabilities(),
|
||||||
|
},
|
||||||
|
Message: "",
|
||||||
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (cs *ControllerServer) ListVolumes(ctx context.Context, req *csi.ListVolumesRequest) (*csi.ListVolumesResponse, error) {
|
func (cs *ControllerServer) ListVolumes(ctx context.Context, req *csi.ListVolumesRequest) (*csi.ListVolumesResponse, error) {
|
||||||
|
|||||||
@ -294,6 +294,17 @@ func TestDeleteVolume(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestValidateVolumeCapabilities(t *testing.T) {
|
func TestValidateVolumeCapabilities(t *testing.T) {
|
||||||
|
capabilities := []*csi.VolumeCapability{
|
||||||
|
{
|
||||||
|
AccessType: &csi.VolumeCapability_Mount{
|
||||||
|
Mount: &csi.VolumeCapability_MountVolume{},
|
||||||
|
},
|
||||||
|
AccessMode: &csi.VolumeCapability_AccessMode{
|
||||||
|
Mode: csi.VolumeCapability_AccessMode_MULTI_NODE_MULTI_WRITER,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
cases := []struct {
|
cases := []struct {
|
||||||
desc string
|
desc string
|
||||||
req *csi.ValidateVolumeCapabilitiesRequest
|
req *csi.ValidateVolumeCapabilitiesRequest
|
||||||
@ -315,37 +326,23 @@ func TestValidateVolumeCapabilities(t *testing.T) {
|
|||||||
{
|
{
|
||||||
desc: "valid request",
|
desc: "valid request",
|
||||||
req: &csi.ValidateVolumeCapabilitiesRequest{
|
req: &csi.ValidateVolumeCapabilitiesRequest{
|
||||||
VolumeId: testVolumeID,
|
VolumeId: testVolumeID,
|
||||||
VolumeCapabilities: []*csi.VolumeCapability{
|
VolumeCapabilities: capabilities,
|
||||||
{
|
},
|
||||||
AccessType: &csi.VolumeCapability_Mount{
|
resp: &csi.ValidateVolumeCapabilitiesResponse{
|
||||||
Mount: &csi.VolumeCapability_MountVolume{},
|
Confirmed: &csi.ValidateVolumeCapabilitiesResponse_Confirmed{VolumeCapabilities: capabilities},
|
||||||
},
|
|
||||||
AccessMode: &csi.VolumeCapability_AccessMode{
|
|
||||||
Mode: csi.VolumeCapability_AccessMode_MULTI_NODE_MULTI_WRITER,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
resp: &csi.ValidateVolumeCapabilitiesResponse{Message: ""},
|
|
||||||
expectedErr: nil,
|
expectedErr: nil,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
desc: "valid request with newTestVolumeID",
|
desc: "valid request with newTestVolumeID",
|
||||||
req: &csi.ValidateVolumeCapabilitiesRequest{
|
req: &csi.ValidateVolumeCapabilitiesRequest{
|
||||||
VolumeId: newTestVolumeID,
|
VolumeId: newTestVolumeID,
|
||||||
VolumeCapabilities: []*csi.VolumeCapability{
|
VolumeCapabilities: capabilities,
|
||||||
{
|
},
|
||||||
AccessType: &csi.VolumeCapability_Mount{
|
resp: &csi.ValidateVolumeCapabilitiesResponse{
|
||||||
Mount: &csi.VolumeCapability_MountVolume{},
|
Confirmed: &csi.ValidateVolumeCapabilitiesResponse_Confirmed{VolumeCapabilities: capabilities},
|
||||||
},
|
|
||||||
AccessMode: &csi.VolumeCapability_AccessMode{
|
|
||||||
Mode: csi.VolumeCapability_AccessMode_MULTI_NODE_MULTI_WRITER,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
resp: &csi.ValidateVolumeCapabilitiesResponse{Message: ""},
|
|
||||||
expectedErr: nil,
|
expectedErr: nil,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
@ -353,13 +350,8 @@ func TestValidateVolumeCapabilities(t *testing.T) {
|
|||||||
for _, test := range cases {
|
for _, test := range cases {
|
||||||
test := test //pin
|
test := test //pin
|
||||||
t.Run(test.desc, func(t *testing.T) {
|
t.Run(test.desc, func(t *testing.T) {
|
||||||
// Setup
|
|
||||||
cs := initTestController(t)
|
cs := initTestController(t)
|
||||||
|
|
||||||
// Run
|
|
||||||
resp, err := cs.ValidateVolumeCapabilities(context.TODO(), test.req)
|
resp, err := cs.ValidateVolumeCapabilities(context.TODO(), test.req)
|
||||||
|
|
||||||
// Verify
|
|
||||||
if test.expectedErr == nil && err != nil {
|
if test.expectedErr == nil && err != nil {
|
||||||
t.Errorf("test %q failed: %v", test.desc, err)
|
t.Errorf("test %q failed: %v", test.desc, err)
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user