mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-25 12:43:23 +00:00
e2e/storage: drivers determine the claim size
Different drivers support different volume sizes. Some have certain minimum sizes, some maximum sizes. Instead of hard-coding some kind of default into the testsuites, now each driver that supports dynamic provisioning has to provide the size.
This commit is contained in:
parent
5349ce75fa
commit
41ab9449ed
@ -74,6 +74,11 @@ type DynamicPVTestDriver interface {
|
||||
// It will set fsType to the StorageClass, if TestDriver supports it.
|
||||
// It will return nil, if the TestDriver doesn't support it.
|
||||
GetDynamicProvisionStorageClass(fsType string) *storagev1.StorageClass
|
||||
|
||||
// GetClaimSize returns the size of the volume that is to be provisioned ("5Gi", "1Mi").
|
||||
// The size must be chosen so that the resulting volume is large enough for all
|
||||
// enabled tests and within the range supported by the underlying storage.
|
||||
GetClaimSize() string
|
||||
}
|
||||
|
||||
// Capability represents a feature that a volume plugin supports
|
||||
|
@ -103,6 +103,10 @@ func (h *hostpathCSIDriver) GetDynamicProvisionStorageClass(fsType string) *stor
|
||||
return getStorageClass(provisioner, parameters, nil, ns, suffix)
|
||||
}
|
||||
|
||||
func (h *hostpathCSIDriver) GetClaimSize() string {
|
||||
return "5Gi"
|
||||
}
|
||||
|
||||
func (h *hostpathCSIDriver) CreateDriver() {
|
||||
By(fmt.Sprintf("deploying %s driver", h.driverInfo.Name))
|
||||
f := h.driverInfo.Framework
|
||||
@ -205,6 +209,10 @@ func (g *gcePDCSIDriver) GetDynamicProvisionStorageClass(fsType string) *storage
|
||||
return getStorageClass(provisioner, parameters, nil, ns, suffix)
|
||||
}
|
||||
|
||||
func (g *gcePDCSIDriver) GetClaimSize() string {
|
||||
return "5Gi"
|
||||
}
|
||||
|
||||
func (g *gcePDCSIDriver) CreateDriver() {
|
||||
By("deploying csi gce-pd driver")
|
||||
// It would be safer to rename the gcePD driver, but that
|
||||
@ -293,6 +301,10 @@ func (g *gcePDExternalCSIDriver) GetDynamicProvisionStorageClass(fsType string)
|
||||
return getStorageClass(provisioner, parameters, nil, ns, suffix)
|
||||
}
|
||||
|
||||
func (g *gcePDExternalCSIDriver) GetClaimSize() string {
|
||||
return "5Gi"
|
||||
}
|
||||
|
||||
func (g *gcePDExternalCSIDriver) CreateDriver() {
|
||||
}
|
||||
|
||||
|
@ -138,6 +138,10 @@ func (n *nfsDriver) GetDynamicProvisionStorageClass(fsType string) *storagev1.St
|
||||
return getStorageClass(provisioner, parameters, nil, ns, suffix)
|
||||
}
|
||||
|
||||
func (n *nfsDriver) GetClaimSize() string {
|
||||
return "5Gi"
|
||||
}
|
||||
|
||||
func (n *nfsDriver) CreateDriver() {
|
||||
f := n.driverInfo.Framework
|
||||
cs := f.ClientSet
|
||||
@ -1034,6 +1038,10 @@ func (c *cinderDriver) GetDynamicProvisionStorageClass(fsType string) *storagev1
|
||||
return getStorageClass(provisioner, parameters, nil, ns, suffix)
|
||||
}
|
||||
|
||||
func (c *cinderDriver) GetClaimSize() string {
|
||||
return "5Gi"
|
||||
}
|
||||
|
||||
func (c *cinderDriver) CreateDriver() {
|
||||
}
|
||||
|
||||
@ -1196,6 +1204,10 @@ func (g *gcePdDriver) GetDynamicProvisionStorageClass(fsType string) *storagev1.
|
||||
return getStorageClass(provisioner, parameters, nil, ns, suffix)
|
||||
}
|
||||
|
||||
func (h *gcePdDriver) GetClaimSize() string {
|
||||
return "5Gi"
|
||||
}
|
||||
|
||||
func (g *gcePdDriver) CreateDriver() {
|
||||
}
|
||||
|
||||
@ -1318,6 +1330,10 @@ func (v *vSphereDriver) GetDynamicProvisionStorageClass(fsType string) *storagev
|
||||
return getStorageClass(provisioner, parameters, nil, ns, suffix)
|
||||
}
|
||||
|
||||
func (v *vSphereDriver) GetClaimSize() string {
|
||||
return "5Gi"
|
||||
}
|
||||
|
||||
func (v *vSphereDriver) CreateDriver() {
|
||||
}
|
||||
|
||||
@ -1436,6 +1452,10 @@ func (a *azureDriver) GetDynamicProvisionStorageClass(fsType string) *storagev1.
|
||||
return getStorageClass(provisioner, parameters, nil, ns, suffix)
|
||||
}
|
||||
|
||||
func (a *azureDriver) GetClaimSize() string {
|
||||
return "5Gi"
|
||||
}
|
||||
|
||||
func (a *azureDriver) CreateDriver() {
|
||||
}
|
||||
|
||||
@ -1543,6 +1563,10 @@ func (a *awsDriver) GetDynamicProvisionStorageClass(fsType string) *storagev1.St
|
||||
return getStorageClass(provisioner, parameters, nil, ns, suffix)
|
||||
}
|
||||
|
||||
func (a *awsDriver) GetClaimSize() string {
|
||||
return "5Gi"
|
||||
}
|
||||
|
||||
func (a *awsDriver) CreateDriver() {
|
||||
}
|
||||
|
||||
|
@ -164,7 +164,7 @@ func (r *genericVolumeTestResource) setupResource(driver drivers.TestDriver, pat
|
||||
case testpatterns.DynamicPV:
|
||||
framework.Logf("Creating resource for dynamic PV")
|
||||
if dDriver, ok := driver.(drivers.DynamicPVTestDriver); ok {
|
||||
claimSize := "5Gi"
|
||||
claimSize := dDriver.GetClaimSize()
|
||||
r.sc = dDriver.GetDynamicProvisionStorageClass(fsType)
|
||||
|
||||
By("creating a StorageClass " + r.sc.Name)
|
||||
|
@ -151,7 +151,7 @@ func (p *provisioningTestResource) setupResource(driver drivers.TestDriver, patt
|
||||
framework.Skipf("Driver %q does not define Dynamic Provision StorageClass - skipping", driver.GetDriverInfo().Name)
|
||||
}
|
||||
p.driver = driver
|
||||
p.claimSize = "5Gi"
|
||||
p.claimSize = dDriver.GetClaimSize()
|
||||
p.pvc = getClaim(p.claimSize, driver.GetDriverInfo().Framework.Namespace.Name)
|
||||
p.pvc.Spec.StorageClassName = &p.sc.Name
|
||||
framework.Logf("In creating storage class object and pvc object for driver - sc: %v, pvc: %v", p.sc, p.pvc)
|
||||
|
@ -196,7 +196,7 @@ func (s *volumeModeTestResource) setupResource(driver drivers.TestDriver, patter
|
||||
}
|
||||
s.sc.VolumeBindingMode = &volBindMode
|
||||
|
||||
claimSize := "5Gi"
|
||||
claimSize := dDriver.GetClaimSize()
|
||||
s.pvc = getClaim(claimSize, ns.Name)
|
||||
s.pvc.Spec.StorageClassName = &s.sc.Name
|
||||
s.pvc.Spec.VolumeMode = &volMode
|
||||
|
Loading…
Reference in New Issue
Block a user