mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 11:50:44 +00:00
Speed up pkg/volume/csi unit tests
This commit is contained in:
parent
2014d37e51
commit
bc3d9252bc
@ -47,7 +47,10 @@ import (
|
||||
volumetypes "k8s.io/kubernetes/pkg/volume/util/types"
|
||||
)
|
||||
|
||||
const testWatchTimeout = 10 * time.Second
|
||||
const (
|
||||
testWatchTimeout = 10 * time.Second
|
||||
testWatchFailTimeout = 2 * time.Second
|
||||
)
|
||||
|
||||
var (
|
||||
bFalse = false
|
||||
@ -121,6 +124,7 @@ func TestAttacherAttach(t *testing.T) {
|
||||
spec *volume.Spec
|
||||
injectAttacherError bool
|
||||
shouldFail bool
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
name: "test ok 1",
|
||||
@ -139,31 +143,34 @@ func TestAttacherAttach(t *testing.T) {
|
||||
spec: volume.NewSpecFromPersistentVolume(makeTestPV("pv01", 10, "driver02", "vol02"), false),
|
||||
},
|
||||
{
|
||||
name: "mismatch vol",
|
||||
nodeName: "node02",
|
||||
driverName: "driver02",
|
||||
volumeName: "vol01",
|
||||
attachID: getAttachmentName("vol02", "driver02", "node02"),
|
||||
spec: volume.NewSpecFromPersistentVolume(makeTestPV("pv01", 10, "driver02", "vol01"), false),
|
||||
shouldFail: true,
|
||||
name: "mismatch vol",
|
||||
nodeName: "node02",
|
||||
driverName: "driver02",
|
||||
volumeName: "vol01",
|
||||
attachID: getAttachmentName("vol02", "driver02", "node02"),
|
||||
spec: volume.NewSpecFromPersistentVolume(makeTestPV("pv01", 10, "driver02", "vol01"), false),
|
||||
shouldFail: true,
|
||||
watchTimeout: testWatchFailTimeout,
|
||||
},
|
||||
{
|
||||
name: "mismatch driver",
|
||||
nodeName: "node02",
|
||||
driverName: "driver000",
|
||||
volumeName: "vol02",
|
||||
attachID: getAttachmentName("vol02", "driver02", "node02"),
|
||||
spec: volume.NewSpecFromPersistentVolume(makeTestPV("pv01", 10, "driver01", "vol02"), false),
|
||||
shouldFail: true,
|
||||
name: "mismatch driver",
|
||||
nodeName: "node02",
|
||||
driverName: "driver000",
|
||||
volumeName: "vol02",
|
||||
attachID: getAttachmentName("vol02", "driver02", "node02"),
|
||||
spec: volume.NewSpecFromPersistentVolume(makeTestPV("pv01", 10, "driver01", "vol02"), false),
|
||||
shouldFail: true,
|
||||
watchTimeout: testWatchFailTimeout,
|
||||
},
|
||||
{
|
||||
name: "mismatch node",
|
||||
nodeName: "node000",
|
||||
driverName: "driver000",
|
||||
volumeName: "vol02",
|
||||
attachID: getAttachmentName("vol02", "driver02", "node02"),
|
||||
spec: volume.NewSpecFromPersistentVolume(makeTestPV("pv01", 10, "driver02", "vol02"), false),
|
||||
shouldFail: true,
|
||||
name: "mismatch node",
|
||||
nodeName: "node000",
|
||||
driverName: "driver000",
|
||||
volumeName: "vol02",
|
||||
attachID: getAttachmentName("vol02", "driver02", "node02"),
|
||||
spec: volume.NewSpecFromPersistentVolume(makeTestPV("pv01", 10, "driver02", "vol02"), false),
|
||||
shouldFail: true,
|
||||
watchTimeout: testWatchFailTimeout,
|
||||
},
|
||||
{
|
||||
name: "attacher error",
|
||||
@ -207,7 +214,7 @@ func TestAttacherAttach(t *testing.T) {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, tc.watchTimeout)
|
||||
|
||||
var wg sync.WaitGroup
|
||||
wg.Add(1)
|
||||
@ -251,6 +258,7 @@ func TestAttacherAttachWithInline(t *testing.T) {
|
||||
spec *volume.Spec
|
||||
injectAttacherError bool
|
||||
shouldFail bool
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
name: "test ok 1 with PV",
|
||||
@ -293,7 +301,7 @@ func TestAttacherAttachWithInline(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, tc.watchTimeout)
|
||||
|
||||
var wg sync.WaitGroup
|
||||
wg.Add(1)
|
||||
@ -328,6 +336,7 @@ func TestAttacherWithCSIDriver(t *testing.T) {
|
||||
name string
|
||||
driver string
|
||||
expectVolumeAttachment bool
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
name: "CSIDriver not attachable",
|
||||
@ -365,7 +374,7 @@ func TestAttacherWithCSIDriver(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, test.watchTimeout)
|
||||
spec := volume.NewSpecFromPersistentVolume(makeTestPV("test-pv", 10, test.driver, "test-vol"), false)
|
||||
|
||||
pluginCanAttach, err := plug.CanAttach(spec)
|
||||
@ -411,9 +420,10 @@ func TestAttacherWaitForVolumeAttachmentWithCSIDriver(t *testing.T) {
|
||||
// we do not instantiate any VolumeAttachment. So if the plugin does not skip attach, WaitForVolumeAttachment
|
||||
// will return an error that volume attachment was not found.
|
||||
tests := []struct {
|
||||
name string
|
||||
driver string
|
||||
expectError bool
|
||||
name string
|
||||
driver string
|
||||
expectError bool
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
name: "CSIDriver not attachable -> success",
|
||||
@ -457,7 +467,7 @@ func TestAttacherWaitForVolumeAttachmentWithCSIDriver(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, test.watchTimeout)
|
||||
spec := volume.NewSpecFromPersistentVolume(makeTestPV("test-pv", 10, test.driver, "test-vol"), false)
|
||||
|
||||
pluginCanAttach, err := plug.CanAttach(spec)
|
||||
@ -488,6 +498,7 @@ func TestAttacherWaitForAttach(t *testing.T) {
|
||||
spec *volume.Spec
|
||||
expectedAttachID string
|
||||
expectError bool
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
name: "successful attach",
|
||||
@ -532,7 +543,7 @@ func TestAttacherWaitForAttach(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, test.watchTimeout)
|
||||
|
||||
if test.makeAttachment != nil {
|
||||
attachment := test.makeAttachment()
|
||||
@ -571,6 +582,7 @@ func TestAttacherWaitForAttachWithInline(t *testing.T) {
|
||||
spec *volume.Spec
|
||||
expectedAttachID string
|
||||
expectError bool
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
name: "successful attach with PV",
|
||||
@ -615,7 +627,7 @@ func TestAttacherWaitForAttachWithInline(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, test.watchTimeout)
|
||||
|
||||
if test.makeAttachment != nil {
|
||||
attachment := test.makeAttachment()
|
||||
@ -653,6 +665,7 @@ func TestAttacherWaitForVolumeAttachment(t *testing.T) {
|
||||
finalAttachErr *storage.VolumeError
|
||||
timeout time.Duration
|
||||
shouldFail bool
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
name: "attach success at get",
|
||||
@ -706,7 +719,7 @@ func TestAttacherWaitForVolumeAttachment(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, tc.watchTimeout)
|
||||
|
||||
t.Logf("running test: %v", tc.name)
|
||||
pvName := fmt.Sprintf("test-pv-%d", i)
|
||||
@ -763,10 +776,11 @@ func TestAttacherVolumesAreAttached(t *testing.T) {
|
||||
testCases := []struct {
|
||||
name string
|
||||
attachedSpecs []attachedSpec
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
"attach and detach",
|
||||
[]attachedSpec{
|
||||
name: "attach and detach",
|
||||
attachedSpecs: []attachedSpec{
|
||||
{"vol0", volume.NewSpecFromPersistentVolume(makeTestPV("pv0", 10, testDriver, "vol0"), false), true},
|
||||
{"vol1", volume.NewSpecFromPersistentVolume(makeTestPV("pv1", 20, testDriver, "vol1"), false), true},
|
||||
{"vol2", volume.NewSpecFromPersistentVolume(makeTestPV("pv2", 10, testDriver, "vol2"), false), false},
|
||||
@ -775,23 +789,23 @@ func TestAttacherVolumesAreAttached(t *testing.T) {
|
||||
},
|
||||
},
|
||||
{
|
||||
"all detached",
|
||||
[]attachedSpec{
|
||||
name: "all detached",
|
||||
attachedSpecs: []attachedSpec{
|
||||
{"vol0", volume.NewSpecFromPersistentVolume(makeTestPV("pv0", 10, testDriver, "vol0"), false), false},
|
||||
{"vol1", volume.NewSpecFromPersistentVolume(makeTestPV("pv1", 20, testDriver, "vol1"), false), false},
|
||||
{"vol2", volume.NewSpecFromPersistentVolume(makeTestPV("pv2", 10, testDriver, "vol2"), false), false},
|
||||
},
|
||||
},
|
||||
{
|
||||
"all attached",
|
||||
[]attachedSpec{
|
||||
name: "all attached",
|
||||
attachedSpecs: []attachedSpec{
|
||||
{"vol0", volume.NewSpecFromPersistentVolume(makeTestPV("pv0", 10, testDriver, "vol0"), false), true},
|
||||
{"vol1", volume.NewSpecFromPersistentVolume(makeTestPV("pv1", 20, testDriver, "vol1"), false), true},
|
||||
},
|
||||
},
|
||||
{
|
||||
"include non-attable",
|
||||
[]attachedSpec{
|
||||
name: "include non-attable",
|
||||
attachedSpecs: []attachedSpec{
|
||||
{"vol0", volume.NewSpecFromPersistentVolume(makeTestPV("pv0", 10, testDriver, "vol0"), false), true},
|
||||
{"vol1", volume.NewSpecFromVolume(makeTestVol("pv1", testDriver)), false},
|
||||
},
|
||||
@ -807,7 +821,7 @@ func TestAttacherVolumesAreAttached(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, tc.watchTimeout)
|
||||
nodeName := "fakeNode"
|
||||
|
||||
var specs []*volume.Spec
|
||||
@ -856,10 +870,11 @@ func TestAttacherVolumesAreAttachedWithInline(t *testing.T) {
|
||||
testCases := []struct {
|
||||
name string
|
||||
attachedSpecs []attachedSpec
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
"attach and detach with volume sources",
|
||||
[]attachedSpec{
|
||||
name: "attach and detach with volume sources",
|
||||
attachedSpecs: []attachedSpec{
|
||||
{"vol0", volume.NewSpecFromPersistentVolume(makeTestPV("pv0", 10, testDriver, "vol0"), false), true},
|
||||
{"vol1", volume.NewSpecFromVolume(makeTestVol("pv1", testDriver)), false},
|
||||
{"vol2", volume.NewSpecFromPersistentVolume(makeTestPV("pv2", 10, testDriver, "vol2"), false), true},
|
||||
@ -878,7 +893,7 @@ func TestAttacherVolumesAreAttachedWithInline(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, tc.watchTimeout)
|
||||
nodeName := "fakeNode"
|
||||
|
||||
var specs []*volume.Spec
|
||||
@ -920,11 +935,12 @@ func TestAttacherVolumesAreAttachedWithInline(t *testing.T) {
|
||||
func TestAttacherDetach(t *testing.T) {
|
||||
nodeName := "fakeNode"
|
||||
testCases := []struct {
|
||||
name string
|
||||
volID string
|
||||
attachID string
|
||||
shouldFail bool
|
||||
reactor func(action core.Action) (handled bool, ret runtime.Object, err error)
|
||||
name string
|
||||
volID string
|
||||
attachID string
|
||||
shouldFail bool
|
||||
reactor func(action core.Action) (handled bool, ret runtime.Object, err error)
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{name: "normal test", volID: "vol-001", attachID: getAttachmentName("vol-001", testDriver, nodeName)},
|
||||
{name: "normal test 2", volID: "vol-002", attachID: getAttachmentName("vol-002", testDriver, nodeName)},
|
||||
@ -959,7 +975,7 @@ func TestAttacherDetach(t *testing.T) {
|
||||
if err0 != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err0)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, tc.watchTimeout)
|
||||
|
||||
pv := makeTestPV("test-pv", 10, testDriver, tc.volID)
|
||||
spec := volume.NewSpecFromPersistentVolume(pv, pv.Spec.PersistentVolumeSource.CSI.ReadOnly)
|
||||
@ -1004,7 +1020,7 @@ func TestAttacherGetDeviceMountPath(t *testing.T) {
|
||||
if err0 != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err0)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, testWatchTimeout)
|
||||
|
||||
pluginDir := csiAttacher.plugin.host.GetPluginDir(plug.GetPluginName())
|
||||
|
||||
@ -1067,6 +1083,7 @@ func TestAttacherMountDevice(t *testing.T) {
|
||||
populateDeviceMountPath bool
|
||||
exitError error
|
||||
spec *volume.Spec
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
testName: "normal PV",
|
||||
@ -1187,7 +1204,7 @@ func TestAttacherMountDevice(t *testing.T) {
|
||||
if err0 != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err0)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, tc.watchTimeout)
|
||||
csiAttacher.csiClient = setupClient(t, tc.stageUnstageSet)
|
||||
|
||||
if tc.deviceMountPath != "" {
|
||||
@ -1309,6 +1326,7 @@ func TestAttacherMountDeviceWithInline(t *testing.T) {
|
||||
stageUnstageSet bool
|
||||
shouldFail bool
|
||||
spec *volume.Spec
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
testName: "normal PV",
|
||||
@ -1387,7 +1405,7 @@ func TestAttacherMountDeviceWithInline(t *testing.T) {
|
||||
if err0 != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err0)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, tc.watchTimeout)
|
||||
csiAttacher.csiClient = setupClient(t, tc.stageUnstageSet)
|
||||
|
||||
if tc.deviceMountPath != "" {
|
||||
@ -1461,6 +1479,7 @@ func TestAttacherUnmountDevice(t *testing.T) {
|
||||
createPV bool
|
||||
stageUnstageSet bool
|
||||
shouldFail bool
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
testName: "normal, json file exists",
|
||||
@ -1523,7 +1542,7 @@ func TestAttacherUnmountDevice(t *testing.T) {
|
||||
if err0 != nil {
|
||||
t.Fatalf("failed to create new attacher: %v", err0)
|
||||
}
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, tc.watchTimeout)
|
||||
csiAttacher.csiClient = setupClient(t, tc.stageUnstageSet)
|
||||
|
||||
if tc.deviceMountPath != "" {
|
||||
@ -1603,26 +1622,38 @@ func TestAttacherUnmountDevice(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func getCsiAttacherFromVolumeAttacher(attacher volume.Attacher) *csiAttacher {
|
||||
func getCsiAttacherFromVolumeAttacher(attacher volume.Attacher, watchTimeout time.Duration) *csiAttacher {
|
||||
if watchTimeout == 0 {
|
||||
watchTimeout = testWatchTimeout
|
||||
}
|
||||
csiAttacher := attacher.(*csiAttacher)
|
||||
csiAttacher.watchTimeout = testWatchTimeout
|
||||
csiAttacher.watchTimeout = watchTimeout
|
||||
return csiAttacher
|
||||
}
|
||||
|
||||
func getCsiAttacherFromVolumeDetacher(detacher volume.Detacher) *csiAttacher {
|
||||
func getCsiAttacherFromVolumeDetacher(detacher volume.Detacher, watchTimeout time.Duration) *csiAttacher {
|
||||
if watchTimeout == 0 {
|
||||
watchTimeout = testWatchTimeout
|
||||
}
|
||||
csiAttacher := detacher.(*csiAttacher)
|
||||
csiAttacher.watchTimeout = testWatchTimeout
|
||||
csiAttacher.watchTimeout = watchTimeout
|
||||
return csiAttacher
|
||||
}
|
||||
|
||||
func getCsiAttacherFromDeviceMounter(deviceMounter volume.DeviceMounter) *csiAttacher {
|
||||
func getCsiAttacherFromDeviceMounter(deviceMounter volume.DeviceMounter, watchTimeout time.Duration) *csiAttacher {
|
||||
if watchTimeout == 0 {
|
||||
watchTimeout = testWatchTimeout
|
||||
}
|
||||
csiAttacher := deviceMounter.(*csiAttacher)
|
||||
csiAttacher.watchTimeout = testWatchTimeout
|
||||
csiAttacher.watchTimeout = watchTimeout
|
||||
return csiAttacher
|
||||
}
|
||||
|
||||
func getCsiAttacherFromDeviceUnmounter(deviceUnmounter volume.DeviceUnmounter) *csiAttacher {
|
||||
func getCsiAttacherFromDeviceUnmounter(deviceUnmounter volume.DeviceUnmounter, watchTimeout time.Duration) *csiAttacher {
|
||||
if watchTimeout == 0 {
|
||||
watchTimeout = testWatchTimeout
|
||||
}
|
||||
csiAttacher := deviceUnmounter.(*csiAttacher)
|
||||
csiAttacher.watchTimeout = testWatchTimeout
|
||||
csiAttacher.watchTimeout = watchTimeout
|
||||
return csiAttacher
|
||||
}
|
||||
|
@ -910,7 +910,7 @@ func TestPluginNewAttacher(t *testing.T) {
|
||||
t.Fatalf("failed to create new attacher: %v", err)
|
||||
}
|
||||
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher)
|
||||
csiAttacher := getCsiAttacherFromVolumeAttacher(attacher, testWatchTimeout)
|
||||
if csiAttacher.plugin == nil {
|
||||
t.Error("plugin not set for attacher")
|
||||
}
|
||||
@ -931,7 +931,7 @@ func TestPluginNewDetacher(t *testing.T) {
|
||||
t.Fatalf("failed to create new detacher: %v", err)
|
||||
}
|
||||
|
||||
csiDetacher := getCsiAttacherFromVolumeDetacher(detacher)
|
||||
csiDetacher := getCsiAttacherFromVolumeDetacher(detacher, testWatchTimeout)
|
||||
if csiDetacher.plugin == nil {
|
||||
t.Error("plugin not set for detacher")
|
||||
}
|
||||
|
@ -60,6 +60,7 @@ func TestCSI_VolumeAll(t *testing.T) {
|
||||
shouldFail bool
|
||||
disableFSGroupPolicyFeatureGate bool
|
||||
driverSpec *storage.CSIDriverSpec
|
||||
watchTimeout time.Duration
|
||||
}{
|
||||
{
|
||||
name: "PersistentVolume",
|
||||
@ -396,7 +397,7 @@ func TestCSI_VolumeAll(t *testing.T) {
|
||||
}
|
||||
|
||||
if devMounter != nil {
|
||||
csiDevMounter := getCsiAttacherFromDeviceMounter(devMounter)
|
||||
csiDevMounter := getCsiAttacherFromDeviceMounter(devMounter, test.watchTimeout)
|
||||
csiDevMounter.csiClient = csiClient
|
||||
devMountPath, err := csiDevMounter.GetDeviceMountPath(volSpec)
|
||||
if err != nil {
|
||||
@ -559,8 +560,8 @@ func TestCSI_VolumeAll(t *testing.T) {
|
||||
}
|
||||
|
||||
if devMounter != nil && devUnmounter != nil {
|
||||
csiDevMounter := getCsiAttacherFromDeviceMounter(devMounter)
|
||||
csiDevUnmounter := getCsiAttacherFromDeviceUnmounter(devUnmounter)
|
||||
csiDevMounter := getCsiAttacherFromDeviceMounter(devMounter, test.watchTimeout)
|
||||
csiDevUnmounter := getCsiAttacherFromDeviceUnmounter(devUnmounter, test.watchTimeout)
|
||||
csiDevUnmounter.csiClient = csiClient
|
||||
|
||||
devMountPath, err := csiDevMounter.GetDeviceMountPath(volSpec)
|
||||
@ -601,7 +602,7 @@ func TestCSI_VolumeAll(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatal("csiTest.VolumeAll volumePlugin.GetVolumeName failed:", err)
|
||||
}
|
||||
csiDetacher := getCsiAttacherFromVolumeDetacher(volDetacher)
|
||||
csiDetacher := getCsiAttacherFromVolumeDetacher(volDetacher, test.watchTimeout)
|
||||
csiDetacher.csiClient = csiClient
|
||||
if err := csiDetacher.Detach(volName, attachDetachVolumeHost.GetNodeName()); err != nil {
|
||||
t.Fatal("csiTest.VolumeAll detacher.Detach failed:", err)
|
||||
|
Loading…
Reference in New Issue
Block a user