mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-27 05:27:21 +00:00
Fix volume creation and deletion of Azure File tests
This commit is contained in:
parent
b5cff9219d
commit
dafa0e178d
@ -97,7 +97,7 @@ type ProviderInterface interface {
|
|||||||
|
|
||||||
CreatePD(zone string) (string, error)
|
CreatePD(zone string) (string, error)
|
||||||
DeletePD(pdName string) error
|
DeletePD(pdName string) error
|
||||||
CreateShare() (string, string, error)
|
CreateShare() (string, string, string, error)
|
||||||
DeleteShare(accountName, shareName string) error
|
DeleteShare(accountName, shareName string) error
|
||||||
|
|
||||||
CreatePVSource(zone, diskName string) (*v1.PersistentVolumeSource, error)
|
CreatePVSource(zone, diskName string) (*v1.PersistentVolumeSource, error)
|
||||||
@ -140,8 +140,8 @@ func (n NullProvider) DeleteNode(node *v1.Node) error {
|
|||||||
return fmt.Errorf("provider does not support DeleteNode")
|
return fmt.Errorf("provider does not support DeleteNode")
|
||||||
}
|
}
|
||||||
|
|
||||||
func (n NullProvider) CreateShare() (string, string, error) {
|
func (n NullProvider) CreateShare() (string, string, string, error) {
|
||||||
return "", "", fmt.Errorf("provider does not support volume creation")
|
return "", "", "", fmt.Errorf("provider does not support volume creation")
|
||||||
}
|
}
|
||||||
|
|
||||||
func (n NullProvider) DeleteShare(accountName, shareName string) error {
|
func (n NullProvider) DeleteShare(accountName, shareName string) error {
|
||||||
|
@ -93,8 +93,8 @@ func (p *Provider) DeleteNode(node *v1.Node) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *Provider) CreateShare() (string, string, error) {
|
func (p *Provider) CreateShare() (string, string, string, error) {
|
||||||
return "", "", nil
|
return "", "", "", nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *Provider) DeleteShare(accountName, shareName string) error {
|
func (p *Provider) DeleteShare(accountName, shareName string) error {
|
||||||
|
@ -86,7 +86,7 @@ func (p *Provider) CreatePD(zone string) (string, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// CreateShare creates a share and return its account name and key.
|
// CreateShare creates a share and return its account name and key.
|
||||||
func (p *Provider) CreateShare() (string, string, error) {
|
func (p *Provider) CreateShare() (string, string, string, error) {
|
||||||
accountOptions := &azure.AccountOptions{
|
accountOptions := &azure.AccountOptions{
|
||||||
Name: "",
|
Name: "",
|
||||||
Type: string(compute.StandardLRS),
|
Type: string(compute.StandardLRS),
|
||||||
@ -102,13 +102,16 @@ func (p *Provider) CreateShare() (string, string, error) {
|
|||||||
RequestGiB: 1,
|
RequestGiB: 1,
|
||||||
}
|
}
|
||||||
|
|
||||||
a, b, c := p.azureCloud.CreateFileShare(accountOptions, shareOptions)
|
accountName, accountKey, err := p.azureCloud.CreateFileShare(accountOptions, shareOptions)
|
||||||
|
if err != nil {
|
||||||
|
return "", "", "", err
|
||||||
|
}
|
||||||
|
|
||||||
return a, b, c
|
return accountName, accountKey, shareOptions.Name, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *Provider) DeleteShare(accountName, shareName string) error {
|
func (p *Provider) DeleteShare(accountName, shareName string) error {
|
||||||
err := p.azureCloud.DeleteFileShare("", accountName, shareName)
|
err := p.azureCloud.DeleteFileShare(p.azureCloud.ResourceGroup, accountName, shareName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
framework.Logf("failed to delete Azure File share %q: %v", shareName, err)
|
framework.Logf("failed to delete Azure File share %q: %v", shareName, err)
|
||||||
}
|
}
|
||||||
|
@ -225,8 +225,8 @@ func (p *Provider) DeleteNode(node *v1.Node) error {
|
|||||||
return p.gceCloud.DeleteInstance(project, zone, node.Name)
|
return p.gceCloud.DeleteInstance(project, zone, node.Name)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *Provider) CreateShare() (string, string, error) {
|
func (p *Provider) CreateShare() (string, string, string, error) {
|
||||||
return "", "", nil
|
return "", "", "", nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *Provider) DeleteShare(accountName, shareName string) error {
|
func (p *Provider) DeleteShare(accountName, shareName string) error {
|
||||||
|
@ -673,7 +673,7 @@ func createPDWithRetry(zone string) (string, error) {
|
|||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
func CreateShare() (string, string, error) {
|
func CreateShare() (string, string, string, error) {
|
||||||
return framework.TestContext.CloudConfig.Provider.CreateShare()
|
return framework.TestContext.CloudConfig.Provider.CreateShare()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2032,9 +2032,10 @@ type azureFileDriver struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type azureFileVolume struct {
|
type azureFileVolume struct {
|
||||||
accountName string
|
accountName string
|
||||||
shareName string
|
shareName string
|
||||||
secretName string
|
secretName string
|
||||||
|
secretNamespace string
|
||||||
}
|
}
|
||||||
|
|
||||||
var _ storageframework.TestDriver = &azureFileDriver{}
|
var _ storageframework.TestDriver = &azureFileDriver{}
|
||||||
@ -2096,7 +2097,7 @@ func (a *azureFileDriver) GetPersistentVolumeSource(readOnly bool, fsType string
|
|||||||
AzureFile: &v1.AzureFilePersistentVolumeSource{
|
AzureFile: &v1.AzureFilePersistentVolumeSource{
|
||||||
SecretName: av.secretName,
|
SecretName: av.secretName,
|
||||||
ShareName: av.shareName,
|
ShareName: av.shareName,
|
||||||
SecretNamespace: nil,
|
SecretNamespace: &av.secretNamespace,
|
||||||
ReadOnly: readOnly,
|
ReadOnly: readOnly,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
@ -2121,12 +2122,30 @@ func (a *azureFileDriver) PrepareTest(f *framework.Framework) (*storageframework
|
|||||||
|
|
||||||
func (a *azureFileDriver) CreateVolume(config *storageframework.PerTestConfig, volType storageframework.TestVolType) storageframework.TestVolume {
|
func (a *azureFileDriver) CreateVolume(config *storageframework.PerTestConfig, volType storageframework.TestVolType) storageframework.TestVolume {
|
||||||
ginkgo.By("creating a test azure file volume")
|
ginkgo.By("creating a test azure file volume")
|
||||||
accountName, shareName, err := e2epv.CreateShare()
|
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(context.TODO(), secret, metav1.CreateOptions{})
|
||||||
framework.ExpectNoError(err)
|
framework.ExpectNoError(err)
|
||||||
return &azureFileVolume{
|
return &azureFileVolume{
|
||||||
accountName: accountName,
|
accountName: accountName,
|
||||||
shareName: shareName,
|
shareName: shareName,
|
||||||
secretName: "",
|
secretName: secretName,
|
||||||
|
secretNamespace: config.Framework.Namespace.Name,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user