Merge pull request #94246 from jingxu97/Aug/snapshot

Fix issue on skipTest in storage suits
This commit is contained in:
Kubernetes Prow Robot 2020-08-26 20:51:37 -07:00 committed by GitHub
commit 9a497c8be6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -149,50 +149,36 @@ func skipUnsupportedTest(driver TestDriver, pattern testpatterns.TestPattern) {
dInfo := driver.GetDriverInfo() dInfo := driver.GetDriverInfo()
var isSupported bool var isSupported bool
// 1. Check if Whether SnapshotType is supported by driver from its interface // 1. Check if Whether volType is supported by driver from its interface
// if isSupported, we still execute the driver and suite tests switch pattern.VolType {
if len(pattern.SnapshotType) > 0 { case testpatterns.InlineVolume:
switch pattern.SnapshotType { _, isSupported = driver.(InlineVolumeTestDriver)
case testpatterns.DynamicCreatedSnapshot: case testpatterns.PreprovisionedPV:
_, isSupported = driver.(SnapshottableTestDriver) _, isSupported = driver.(PreprovisionedPVTestDriver)
default: case testpatterns.DynamicPV, testpatterns.GenericEphemeralVolume:
isSupported = false _, isSupported = driver.(DynamicPVTestDriver)
} case testpatterns.CSIInlineVolume:
if !isSupported { _, isSupported = driver.(EphemeralTestDriver)
e2eskipper.Skipf("Driver %s doesn't support snapshot type %v -- skipping", dInfo.Name, pattern.SnapshotType) default:
} isSupported = false
} else {
// 2. Check if Whether volType is supported by driver from its interface
switch pattern.VolType {
case testpatterns.InlineVolume:
_, isSupported = driver.(InlineVolumeTestDriver)
case testpatterns.PreprovisionedPV:
_, isSupported = driver.(PreprovisionedPVTestDriver)
case testpatterns.DynamicPV, testpatterns.GenericEphemeralVolume:
_, isSupported = driver.(DynamicPVTestDriver)
case testpatterns.CSIInlineVolume:
_, isSupported = driver.(EphemeralTestDriver)
default:
isSupported = false
}
if !isSupported {
e2eskipper.Skipf("Driver %s doesn't support %v -- skipping", dInfo.Name, pattern.VolType)
}
// 3. Check if fsType is supported
if !dInfo.SupportedFsType.Has(pattern.FsType) {
e2eskipper.Skipf("Driver %s doesn't support %v -- skipping", dInfo.Name, pattern.FsType)
}
if pattern.FsType == "xfs" && framework.NodeOSDistroIs("gci", "cos", "windows") {
e2eskipper.Skipf("Distro doesn't support xfs -- skipping")
}
if pattern.FsType == "ntfs" && !framework.NodeOSDistroIs("windows") {
e2eskipper.Skipf("Distro %s doesn't support ntfs -- skipping", framework.TestContext.NodeOSDistro)
}
} }
// 4. Check with driver specific logic if !isSupported {
e2eskipper.Skipf("Driver %s doesn't support %v -- skipping", dInfo.Name, pattern.VolType)
}
// 2. Check if fsType is supported
if !dInfo.SupportedFsType.Has(pattern.FsType) {
e2eskipper.Skipf("Driver %s doesn't support %v -- skipping", dInfo.Name, pattern.FsType)
}
if pattern.FsType == "xfs" && framework.NodeOSDistroIs("gci", "cos", "windows") {
e2eskipper.Skipf("Distro doesn't support xfs -- skipping")
}
if pattern.FsType == "ntfs" && !framework.NodeOSDistroIs("windows") {
e2eskipper.Skipf("Distro %s doesn't support ntfs -- skipping", framework.TestContext.NodeOSDistro)
}
// 3. Check with driver specific logic
driver.SkipUnsupportedTest(pattern) driver.SkipUnsupportedTest(pattern)
} }