Skip to content

Commit 8126201

Browse files
authored
Merge pull request kubernetes#82697 from sttts/sttts-TestBlockMapperMapDeviceNotSupportAttach-race
Fix TestBlockMapperMapDeviceNotSupportAttach informer sync race
2 parents 40695b0 + 79b9cff commit 8126201

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

pkg/volume/csi/csi_block_test.go

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -358,8 +358,7 @@ func TestBlockMapperMapDevice(t *testing.T) {
358358
func TestBlockMapperMapDeviceNotSupportAttach(t *testing.T) {
359359
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.CSIBlockVolume, true)()
360360
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.CSIDriverRegistry, true)()
361-
plug, tmpDir := newTestPlugin(t, nil)
362-
defer os.RemoveAll(tmpDir)
361+
363362
fakeClient := fakeclient.NewSimpleClientset()
364363
attachRequired := false
365364
fakeDriver := &v1beta1.CSIDriver{
@@ -370,17 +369,23 @@ func TestBlockMapperMapDeviceNotSupportAttach(t *testing.T) {
370369
AttachRequired: &attachRequired,
371370
},
372371
}
373-
_, err := plug.host.GetKubeClient().StorageV1beta1().CSIDrivers().Create(fakeDriver)
372+
_, err := fakeClient.StorageV1beta1().CSIDrivers().Create(fakeDriver)
374373
if err != nil {
375374
t.Fatalf("Failed to create a fakeDriver: %v", err)
376375
}
377376

377+
// after the driver is created, create the plugin. newTestPlugin waits for the informer to sync,
378+
// such that csiMapper.SetUpDevice below sees the VolumeAttachment object in the lister.
379+
380+
plug, tmpDir := newTestPlugin(t, fakeClient)
381+
defer os.RemoveAll(tmpDir)
382+
378383
host := volumetest.NewFakeVolumeHostWithCSINodeName(
379384
tmpDir,
380385
fakeClient,
381386
nil,
382387
"fakeNode",
383-
nil,
388+
plug.csiDriverLister,
384389
)
385390
plug.host = host
386391
csiMapper, _, _, err := prepareBlockMapperTest(plug, "test-pv", t)

0 commit comments

Comments
 (0)