Update in-tree azureDisk and azureFile tests
This commit is contained in:
		| @@ -1246,14 +1246,7 @@ type azureDiskDriver struct { | ||||
| 	driverInfo storageframework.DriverInfo | ||||
| } | ||||
|  | ||||
| type azureDiskVolume struct { | ||||
| 	volumeName string | ||||
| } | ||||
|  | ||||
| var _ storageframework.TestDriver = &azureDiskDriver{} | ||||
| var _ storageframework.PreprovisionedVolumeTestDriver = &azureDiskDriver{} | ||||
| var _ storageframework.InlineVolumeTestDriver = &azureDiskDriver{} | ||||
| var _ storageframework.PreprovisionedPVTestDriver = &azureDiskDriver{} | ||||
| var _ storageframework.DynamicPVTestDriver = &azureDiskDriver{} | ||||
| var _ storageframework.CustomTimeoutsTestDriver = &azureDiskDriver{} | ||||
|  | ||||
| @@ -1297,51 +1290,6 @@ func (a *azureDiskDriver) SkipUnsupportedTest(pattern storageframework.TestPatte | ||||
| 	e2eskipper.SkipUnlessProviderIs("azure") | ||||
| } | ||||
|  | ||||
| func (a *azureDiskDriver) GetVolumeSource(readOnly bool, fsType string, e2evolume storageframework.TestVolume) *v1.VolumeSource { | ||||
| 	av, ok := e2evolume.(*azureDiskVolume) | ||||
| 	if !ok { | ||||
| 		framework.Failf("Failed to cast test volume of type %T to the Azure test volume", e2evolume) | ||||
| 	} | ||||
| 	diskName := av.volumeName[(strings.LastIndex(av.volumeName, "/") + 1):] | ||||
|  | ||||
| 	kind := v1.AzureManagedDisk | ||||
| 	volSource := v1.VolumeSource{ | ||||
| 		AzureDisk: &v1.AzureDiskVolumeSource{ | ||||
| 			DiskName:    diskName, | ||||
| 			DataDiskURI: av.volumeName, | ||||
| 			Kind:        &kind, | ||||
| 			ReadOnly:    &readOnly, | ||||
| 		}, | ||||
| 	} | ||||
| 	if fsType != "" { | ||||
| 		volSource.AzureDisk.FSType = &fsType | ||||
| 	} | ||||
| 	return &volSource | ||||
| } | ||||
|  | ||||
| func (a *azureDiskDriver) GetPersistentVolumeSource(readOnly bool, fsType string, e2evolume storageframework.TestVolume) (*v1.PersistentVolumeSource, *v1.VolumeNodeAffinity) { | ||||
| 	av, ok := e2evolume.(*azureDiskVolume) | ||||
| 	if !ok { | ||||
| 		framework.Failf("Failed to cast test volume of type %T to the Azure test volume", e2evolume) | ||||
| 	} | ||||
|  | ||||
| 	diskName := av.volumeName[(strings.LastIndex(av.volumeName, "/") + 1):] | ||||
|  | ||||
| 	kind := v1.AzureManagedDisk | ||||
| 	pvSource := v1.PersistentVolumeSource{ | ||||
| 		AzureDisk: &v1.AzureDiskVolumeSource{ | ||||
| 			DiskName:    diskName, | ||||
| 			DataDiskURI: av.volumeName, | ||||
| 			Kind:        &kind, | ||||
| 			ReadOnly:    &readOnly, | ||||
| 		}, | ||||
| 	} | ||||
| 	if fsType != "" { | ||||
| 		pvSource.AzureDisk.FSType = &fsType | ||||
| 	} | ||||
| 	return &pvSource, nil | ||||
| } | ||||
|  | ||||
| func (a *azureDiskDriver) GetDynamicProvisionStorageClass(ctx context.Context, config *storageframework.PerTestConfig, fsType string) *storagev1.StorageClass { | ||||
| 	provisioner := "kubernetes.io/azure-disk" | ||||
| 	parameters := map[string]string{} | ||||
| @@ -1362,27 +1310,12 @@ func (a *azureDiskDriver) PrepareTest(ctx context.Context, f *framework.Framewor | ||||
| 	} | ||||
| } | ||||
|  | ||||
| func (a *azureDiskDriver) CreateVolume(ctx context.Context, config *storageframework.PerTestConfig, volType storageframework.TestVolType) storageframework.TestVolume { | ||||
| 	ginkgo.By("creating a test azure disk volume") | ||||
| 	zone := getInlineVolumeZone(ctx, config.Framework) | ||||
| 	if volType == storageframework.InlineVolume { | ||||
| 		// PD will be created in framework.TestContext.CloudConfig.Zone zone, | ||||
| 		// so pods should be also scheduled there. | ||||
| 		config.ClientNodeSelection = e2epod.NodeSelection{ | ||||
| 			Selector: map[string]string{ | ||||
| 				v1.LabelTopologyZone: zone, | ||||
| 			}, | ||||
| 		} | ||||
| 	} | ||||
| 	volumeName, err := e2epv.CreatePDWithRetryAndZone(ctx, zone) | ||||
| 	framework.ExpectNoError(err) | ||||
| 	return &azureDiskVolume{ | ||||
| 		volumeName: volumeName, | ||||
| 	} | ||||
| } | ||||
|  | ||||
| func (v *azureDiskVolume) DeleteVolume(ctx context.Context) { | ||||
| 	_ = e2epv.DeletePDWithRetry(ctx, v.volumeName) | ||||
| func (a *azureDiskDriver) GetTimeouts() *framework.TimeoutContext { | ||||
| 	timeouts := framework.NewTimeoutContext() | ||||
| 	timeouts.PodStart = time.Minute * 15 | ||||
| 	timeouts.PodDelete = time.Minute * 15 | ||||
| 	timeouts.PVDelete = time.Minute * 20 | ||||
| 	return timeouts | ||||
| } | ||||
|  | ||||
| // AWS | ||||
| @@ -1704,17 +1637,7 @@ type azureFileDriver struct { | ||||
| 	driverInfo storageframework.DriverInfo | ||||
| } | ||||
|  | ||||
| type azureFileVolume struct { | ||||
| 	accountName     string | ||||
| 	shareName       string | ||||
| 	secretName      string | ||||
| 	secretNamespace string | ||||
| } | ||||
|  | ||||
| var _ storageframework.TestDriver = &azureFileDriver{} | ||||
| var _ storageframework.PreprovisionedVolumeTestDriver = &azureFileDriver{} | ||||
| var _ storageframework.InlineVolumeTestDriver = &azureFileDriver{} | ||||
| var _ storageframework.PreprovisionedPVTestDriver = &azureFileDriver{} | ||||
| var _ storageframework.DynamicPVTestDriver = &azureFileDriver{} | ||||
|  | ||||
| // InitAzureFileDriver returns azureFileDriver that implements TestDriver interface | ||||
| @@ -1751,37 +1674,6 @@ func (a *azureFileDriver) SkipUnsupportedTest(pattern storageframework.TestPatte | ||||
| 	e2eskipper.SkipUnlessProviderIs("azure") | ||||
| } | ||||
|  | ||||
| func (a *azureFileDriver) GetVolumeSource(readOnly bool, fsType string, e2evolume storageframework.TestVolume) *v1.VolumeSource { | ||||
| 	av, ok := e2evolume.(*azureFileVolume) | ||||
| 	if !ok { | ||||
| 		framework.Failf("Failed to cast test volume of type %T to the Azure test volume", e2evolume) | ||||
| 	} | ||||
| 	volSource := v1.VolumeSource{ | ||||
| 		AzureFile: &v1.AzureFileVolumeSource{ | ||||
| 			SecretName: av.secretName, | ||||
| 			ShareName:  av.shareName, | ||||
| 			ReadOnly:   readOnly, | ||||
| 		}, | ||||
| 	} | ||||
| 	return &volSource | ||||
| } | ||||
|  | ||||
| func (a *azureFileDriver) GetPersistentVolumeSource(readOnly bool, fsType string, e2evolume storageframework.TestVolume) (*v1.PersistentVolumeSource, *v1.VolumeNodeAffinity) { | ||||
| 	av, ok := e2evolume.(*azureFileVolume) | ||||
| 	if !ok { | ||||
| 		framework.Failf("Failed to cast test volume of type %T to the Azure test volume", e2evolume) | ||||
| 	} | ||||
| 	pvSource := v1.PersistentVolumeSource{ | ||||
| 		AzureFile: &v1.AzureFilePersistentVolumeSource{ | ||||
| 			SecretName:      av.secretName, | ||||
| 			ShareName:       av.shareName, | ||||
| 			SecretNamespace: &av.secretNamespace, | ||||
| 			ReadOnly:        readOnly, | ||||
| 		}, | ||||
| 	} | ||||
| 	return &pvSource, nil | ||||
| } | ||||
|  | ||||
| func (a *azureFileDriver) GetDynamicProvisionStorageClass(ctx context.Context, config *storageframework.PerTestConfig, fsType string) *storagev1.StorageClass { | ||||
| 	provisioner := "kubernetes.io/azure-file" | ||||
| 	parameters := map[string]string{} | ||||
| @@ -1797,45 +1689,3 @@ func (a *azureFileDriver) PrepareTest(ctx context.Context, f *framework.Framewor | ||||
| 		Framework: f, | ||||
| 	} | ||||
| } | ||||
|  | ||||
| func (a *azureFileDriver) CreateVolume(ctx context.Context, config *storageframework.PerTestConfig, volType storageframework.TestVolType) storageframework.TestVolume { | ||||
| 	ginkgo.By("creating a test azure file volume") | ||||
| 	accountName, accountKey, shareName, err := e2epv.CreateShare() | ||||
| 	framework.ExpectNoError(err) | ||||
|  | ||||
| 	secretName := "azure-storage-account-" + accountName + "-secret" | ||||
| 	secret := &v1.Secret{ | ||||
| 		ObjectMeta: metav1.ObjectMeta{ | ||||
| 			Namespace: config.Framework.Namespace.Name, | ||||
| 			Name:      secretName, | ||||
| 		}, | ||||
|  | ||||
| 		Data: map[string][]byte{ | ||||
| 			"azurestorageaccountname": []byte(accountName), | ||||
| 			"azurestorageaccountkey":  []byte(accountKey), | ||||
| 		}, | ||||
| 		Type: "Opaque", | ||||
| 	} | ||||
|  | ||||
| 	_, err = config.Framework.ClientSet.CoreV1().Secrets(config.Framework.Namespace.Name).Create(ctx, secret, metav1.CreateOptions{}) | ||||
| 	framework.ExpectNoError(err) | ||||
| 	return &azureFileVolume{ | ||||
| 		accountName:     accountName, | ||||
| 		shareName:       shareName, | ||||
| 		secretName:      secretName, | ||||
| 		secretNamespace: config.Framework.Namespace.Name, | ||||
| 	} | ||||
| } | ||||
|  | ||||
| func (v *azureFileVolume) DeleteVolume(ctx context.Context) { | ||||
| 	err := e2epv.DeleteShare(v.accountName, v.shareName) | ||||
| 	framework.ExpectNoError(err) | ||||
| } | ||||
|  | ||||
| func (a *azureDiskDriver) GetTimeouts() *framework.TimeoutContext { | ||||
| 	timeouts := framework.NewTimeoutContext() | ||||
| 	timeouts.PodStart = time.Minute * 15 | ||||
| 	timeouts.PodDelete = time.Minute * 15 | ||||
| 	timeouts.PVDelete = time.Minute * 20 | ||||
| 	return timeouts | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 carlory
					carlory