Merge pull request #86000 from timoreimann/e2e-support-long-csi-driver-names

e2e: support long CSI driver names
This commit is contained in:
Kubernetes Prow Robot 2019-12-14 16:11:36 -08:00 committed by GitHub
commit 5ead4974e0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 11 deletions

View File

@ -171,7 +171,6 @@ func skipUnsupportedTest(driver TestDriver, pattern testpatterns.TestPattern) {
type VolumeResource struct { type VolumeResource struct {
Config *PerTestConfig Config *PerTestConfig
Pattern testpatterns.TestPattern Pattern testpatterns.TestPattern
VolType string
VolSource *v1.VolumeSource VolSource *v1.VolumeSource
Pvc *v1.PersistentVolumeClaim Pvc *v1.PersistentVolumeClaim
Pv *v1.PersistentVolume Pv *v1.PersistentVolume
@ -199,7 +198,6 @@ func CreateVolumeResource(driver TestDriver, config *PerTestConfig, pattern test
framework.Logf("Creating resource for inline volume") framework.Logf("Creating resource for inline volume")
if iDriver, ok := driver.(InlineVolumeTestDriver); ok { if iDriver, ok := driver.(InlineVolumeTestDriver); ok {
r.VolSource = iDriver.GetVolumeSource(false, pattern.FsType, r.Volume) r.VolSource = iDriver.GetVolumeSource(false, pattern.FsType, r.Volume)
r.VolType = dInfo.Name
} }
case testpatterns.PreprovisionedPV: case testpatterns.PreprovisionedPV:
framework.Logf("Creating resource for pre-provisioned PV") framework.Logf("Creating resource for pre-provisioned PV")
@ -209,7 +207,6 @@ func CreateVolumeResource(driver TestDriver, config *PerTestConfig, pattern test
r.Pv, r.Pvc = createPVCPV(f, dInfo.Name, pvSource, volumeNodeAffinity, pattern.VolMode, dInfo.RequiredAccessModes) r.Pv, r.Pvc = createPVCPV(f, dInfo.Name, pvSource, volumeNodeAffinity, pattern.VolMode, dInfo.RequiredAccessModes)
r.VolSource = createVolumeSource(r.Pvc.Name, false /* readOnly */) r.VolSource = createVolumeSource(r.Pvc.Name, false /* readOnly */)
} }
r.VolType = fmt.Sprintf("%s-preprovisionedPV", dInfo.Name)
} }
case testpatterns.DynamicPV: case testpatterns.DynamicPV:
framework.Logf("Creating resource for dynamic PV") framework.Logf("Creating resource for dynamic PV")
@ -238,12 +235,10 @@ func CreateVolumeResource(driver TestDriver, config *PerTestConfig, pattern test
f, dInfo.Name, claimSize, r.Sc, pattern.VolMode, dInfo.RequiredAccessModes) f, dInfo.Name, claimSize, r.Sc, pattern.VolMode, dInfo.RequiredAccessModes)
r.VolSource = createVolumeSource(r.Pvc.Name, false /* readOnly */) r.VolSource = createVolumeSource(r.Pvc.Name, false /* readOnly */)
} }
r.VolType = fmt.Sprintf("%s-dynamicPV", dInfo.Name)
} }
case testpatterns.CSIInlineVolume: case testpatterns.CSIInlineVolume:
framework.Logf("Creating resource for CSI ephemeral inline volume") framework.Logf("Creating resource for CSI ephemeral inline volume")
if eDriver, ok := driver.(EphemeralTestDriver); ok { if eDriver, ok := driver.(EphemeralTestDriver); ok {
r.VolType = fmt.Sprintf("%s-ephemeral", dInfo.Name)
attributes, _, _ := eDriver.GetVolume(config, 0) attributes, _, _ := eDriver.GetVolume(config, 0)
r.VolSource = &v1.VolumeSource{ r.VolSource = &v1.VolumeSource{
CSI: &v1.CSIVolumeSource{ CSI: &v1.CSIVolumeSource{

View File

@ -148,7 +148,7 @@ func (s *subPathTestSuite) DefineTests(driver TestDriver, pattern testpatterns.T
} }
subPath := f.Namespace.Name subPath := f.Namespace.Name
l.pod = SubpathTestPod(f, subPath, l.resource.VolType, l.resource.VolSource, true) l.pod = SubpathTestPod(f, subPath, string(volType), l.resource.VolSource, true)
l.pod.Spec.NodeName = l.config.ClientNodeName l.pod.Spec.NodeName = l.config.ClientNodeName
l.pod.Spec.NodeSelector = l.config.ClientNodeSelector l.pod.Spec.NodeSelector = l.config.ClientNodeSelector
@ -186,6 +186,8 @@ func (s *subPathTestSuite) DefineTests(driver TestDriver, pattern testpatterns.T
validateMigrationVolumeOpCounts(f.ClientSet, driver.GetDriverInfo().InTreePluginName, l.intreeOps, l.migratedOps) validateMigrationVolumeOpCounts(f.ClientSet, driver.GetDriverInfo().InTreePluginName, l.intreeOps, l.migratedOps)
} }
driverName := driver.GetDriverInfo().Name
ginkgo.It("should support non-existent path", func() { ginkgo.It("should support non-existent path", func() {
init() init()
defer cleanup() defer cleanup()
@ -348,9 +350,9 @@ func (s *subPathTestSuite) DefineTests(driver TestDriver, pattern testpatterns.T
init() init()
defer cleanup() defer cleanup()
if strings.HasPrefix(l.resource.VolType, "hostPath") || strings.HasPrefix(l.resource.VolType, "csi-hostpath") { if strings.HasPrefix(driverName, "hostPath") {
// TODO: This skip should be removed once #61446 is fixed // TODO: This skip should be removed once #61446 is fixed
framework.Skipf("%s volume type does not support reconstruction, skipping", l.resource.VolType) framework.Skipf("Driver %s does not support reconstruction, skipping", driverName)
} }
testSubpathReconstruction(f, l.hostExec, l.pod, true) testSubpathReconstruction(f, l.hostExec, l.pod, true)
@ -390,7 +392,7 @@ func (s *subPathTestSuite) DefineTests(driver TestDriver, pattern testpatterns.T
init() init()
defer cleanup() defer cleanup()
if l.roVolSource == nil { if l.roVolSource == nil {
framework.Skipf("Volume type %v doesn't support readOnly source", l.resource.VolType) framework.Skipf("Driver %s on volume type %s doesn't support readOnly source", driverName, pattern.VolType)
} }
origpod := l.pod.DeepCopy() origpod := l.pod.DeepCopy()
@ -418,7 +420,7 @@ func (s *subPathTestSuite) DefineTests(driver TestDriver, pattern testpatterns.T
init() init()
defer cleanup() defer cleanup()
if l.roVolSource == nil { if l.roVolSource == nil {
framework.Skipf("Volume type %v doesn't support readOnly source", l.resource.VolType) framework.Skipf("Driver %s on volume type %s doesn't support readOnly source", driverName, pattern.VolType)
} }
// Format the volume while it's writable // Format the volume while it's writable

View File

@ -193,7 +193,7 @@ func (t *volumesTestSuite) DefineTests(driver TestDriver, pattern testpatterns.T
init() init()
defer cleanup() defer cleanup()
testScriptInPod(f, l.resource.VolType, l.resource.VolSource, l.config) testScriptInPod(f, string(pattern.VolType), l.resource.VolSource, l.config)
}) })
} }
} }