Merge pull request #78306 from hoyho/feat/e2e-storage-dynamic-size

feat(e2e): refactor hard-coded provision size
This commit is contained in:
Kubernetes Prow Robot
2019-10-08 17:07:51 -07:00
committed by GitHub
21 changed files with 697 additions and 81 deletions

View File

@@ -35,6 +35,7 @@ import (
"k8s.io/kubernetes/test/e2e/framework"
e2epod "k8s.io/kubernetes/test/e2e/framework/pod"
e2epv "k8s.io/kubernetes/test/e2e/framework/pv"
"k8s.io/kubernetes/test/e2e/framework/volume"
"k8s.io/kubernetes/test/e2e/storage/testpatterns"
"k8s.io/kubernetes/test/e2e/storage/utils"
)
@@ -61,6 +62,9 @@ func InitVolumeModeTestSuite() TestSuite {
testpatterns.BlockVolModePreprovisionedPV,
testpatterns.BlockVolModeDynamicPV,
},
supportedSizeRange: volume.SizeRange{
Min: "1Mi",
},
},
}
}
@@ -155,9 +159,13 @@ func (t *volumeModeTestSuite) defineTests(driver TestDriver, pattern testpattern
framework.Skipf("Driver %q does not define Dynamic Provision StorageClass - skipping", dInfo.Name)
}
l.sc.VolumeBindingMode = &volBindMode
testVolumeSizeRange := t.getTestSuiteInfo().supportedSizeRange
driverVolumeSizeRange := dInfo.SupportedSizeRange
claimSize, err := getSizeRangesIntersection(testVolumeSizeRange, driverVolumeSizeRange)
framework.ExpectNoError(err, "determine intersection of test size range %+v and driver size range %+v", testVolumeSizeRange, driverVolumeSizeRange)
l.pvc = e2epv.MakePersistentVolumeClaim(e2epv.PersistentVolumeClaimConfig{
ClaimSize: dDriver.GetClaimSize(),
ClaimSize: claimSize,
StorageClassName: &(l.sc.Name),
VolumeMode: &pattern.VolMode,
}, l.ns.Name)
@@ -278,7 +286,8 @@ func (t *volumeModeTestSuite) defineTests(driver TestDriver, pattern testpattern
ginkgo.It("should fail to use a volume in a pod with mismatched mode [Slow]", func() {
skipTestIfBlockNotSupported(driver)
init()
l.genericVolumeTestResource = *createGenericVolumeTestResource(driver, l.config, pattern)
testVolumeSizeRange := t.getTestSuiteInfo().supportedSizeRange
l.genericVolumeTestResource = *createGenericVolumeTestResource(driver, l.config, pattern, testVolumeSizeRange)
defer cleanup()
ginkgo.By("Creating pod")
@@ -326,7 +335,8 @@ func (t *volumeModeTestSuite) defineTests(driver TestDriver, pattern testpattern
skipTestIfBlockNotSupported(driver)
}
init()
l.genericVolumeTestResource = *createGenericVolumeTestResource(driver, l.config, pattern)
testVolumeSizeRange := t.getTestSuiteInfo().supportedSizeRange
l.genericVolumeTestResource = *createGenericVolumeTestResource(driver, l.config, pattern, testVolumeSizeRange)
defer cleanup()
ginkgo.By("Creating pod")