mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-27 13:37:30 +00:00
Merge pull request #82324 from andyzhangx/fix-azure-pv-e2e-test
test: fix azure disk e2e test failure
This commit is contained in:
commit
411caaf469
@ -10,6 +10,7 @@ go_library(
|
|||||||
"//staging/src/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
|
"//staging/src/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
|
||||||
"//staging/src/k8s.io/legacy-cloud-providers/azure:go_default_library",
|
"//staging/src/k8s.io/legacy-cloud-providers/azure:go_default_library",
|
||||||
"//test/e2e/framework:go_default_library",
|
"//test/e2e/framework:go_default_library",
|
||||||
|
"//vendor/github.com/Azure/azure-sdk-for-go/services/compute/mgmt/2019-07-01/compute:go_default_library",
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -21,6 +21,8 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
|
"github.com/Azure/azure-sdk-for-go/services/compute/mgmt/2019-07-01/compute"
|
||||||
|
|
||||||
v1 "k8s.io/api/core/v1"
|
v1 "k8s.io/api/core/v1"
|
||||||
"k8s.io/apimachinery/pkg/util/uuid"
|
"k8s.io/apimachinery/pkg/util/uuid"
|
||||||
"k8s.io/kubernetes/test/e2e/framework"
|
"k8s.io/kubernetes/test/e2e/framework"
|
||||||
@ -62,16 +64,24 @@ func (p *Provider) DeleteNode(node *v1.Node) error {
|
|||||||
// CreatePD creates a persistent volume
|
// CreatePD creates a persistent volume
|
||||||
func (p *Provider) CreatePD(zone string) (string, error) {
|
func (p *Provider) CreatePD(zone string) (string, error) {
|
||||||
pdName := fmt.Sprintf("%s-%s", framework.TestContext.Prefix, string(uuid.NewUUID()))
|
pdName := fmt.Sprintf("%s-%s", framework.TestContext.Prefix, string(uuid.NewUUID()))
|
||||||
_, diskURI, _, err := p.azureCloud.CreateVolume(pdName, "" /* account */, "" /* sku */, "" /* location */, 1 /* sizeGb */)
|
|
||||||
if err != nil {
|
volumeOptions := &azure.ManagedDiskOptions{
|
||||||
return "", err
|
DiskName: pdName,
|
||||||
|
StorageAccountType: compute.StandardLRS,
|
||||||
|
ResourceGroup: "",
|
||||||
|
PVCName: pdName,
|
||||||
|
SizeGB: 1,
|
||||||
|
Tags: nil,
|
||||||
|
AvailabilityZone: zone,
|
||||||
|
DiskIOPSReadWrite: "",
|
||||||
|
DiskMBpsReadWrite: "",
|
||||||
}
|
}
|
||||||
return diskURI, nil
|
return p.azureCloud.CreateManagedDisk(volumeOptions)
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeletePD deletes a persistent volume
|
// DeletePD deletes a persistent volume
|
||||||
func (p *Provider) DeletePD(pdName string) error {
|
func (p *Provider) DeletePD(pdName string) error {
|
||||||
if err := p.azureCloud.DeleteVolume(pdName); err != nil {
|
if err := p.azureCloud.DeleteManagedDisk(pdName); err != nil {
|
||||||
framework.Logf("failed to delete Azure volume %q: %v", pdName, err)
|
framework.Logf("failed to delete Azure volume %q: %v", pdName, err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -1440,10 +1440,12 @@ func (a *azureDriver) GetVolumeSource(readOnly bool, fsType string, volume tests
|
|||||||
|
|
||||||
diskName := av.volumeName[(strings.LastIndex(av.volumeName, "/") + 1):]
|
diskName := av.volumeName[(strings.LastIndex(av.volumeName, "/") + 1):]
|
||||||
|
|
||||||
|
kind := v1.AzureManagedDisk
|
||||||
volSource := v1.VolumeSource{
|
volSource := v1.VolumeSource{
|
||||||
AzureDisk: &v1.AzureDiskVolumeSource{
|
AzureDisk: &v1.AzureDiskVolumeSource{
|
||||||
DiskName: diskName,
|
DiskName: diskName,
|
||||||
DataDiskURI: av.volumeName,
|
DataDiskURI: av.volumeName,
|
||||||
|
Kind: &kind,
|
||||||
ReadOnly: &readOnly,
|
ReadOnly: &readOnly,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
@ -1459,10 +1461,12 @@ func (a *azureDriver) GetPersistentVolumeSource(readOnly bool, fsType string, vo
|
|||||||
|
|
||||||
diskName := av.volumeName[(strings.LastIndex(av.volumeName, "/") + 1):]
|
diskName := av.volumeName[(strings.LastIndex(av.volumeName, "/") + 1):]
|
||||||
|
|
||||||
|
kind := v1.AzureManagedDisk
|
||||||
pvSource := v1.PersistentVolumeSource{
|
pvSource := v1.PersistentVolumeSource{
|
||||||
AzureDisk: &v1.AzureDiskVolumeSource{
|
AzureDisk: &v1.AzureDiskVolumeSource{
|
||||||
DiskName: diskName,
|
DiskName: diskName,
|
||||||
DataDiskURI: av.volumeName,
|
DataDiskURI: av.volumeName,
|
||||||
|
Kind: &kind,
|
||||||
ReadOnly: &readOnly,
|
ReadOnly: &readOnly,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
@ -1498,6 +1502,13 @@ func (a *azureDriver) PrepareTest(f *framework.Framework) (*testsuites.PerTestCo
|
|||||||
|
|
||||||
func (a *azureDriver) CreateVolume(config *testsuites.PerTestConfig, volType testpatterns.TestVolType) testsuites.TestVolume {
|
func (a *azureDriver) CreateVolume(config *testsuites.PerTestConfig, volType testpatterns.TestVolType) testsuites.TestVolume {
|
||||||
ginkgo.By("creating a test azure disk volume")
|
ginkgo.By("creating a test azure disk volume")
|
||||||
|
if volType == testpatterns.InlineVolume {
|
||||||
|
// Volume will be created in framework.TestContext.CloudConfig.Zone zone,
|
||||||
|
// so pods should be also scheduled there.
|
||||||
|
config.ClientNodeSelector = map[string]string{
|
||||||
|
v1.LabelZoneFailureDomain: framework.TestContext.CloudConfig.Zone,
|
||||||
|
}
|
||||||
|
}
|
||||||
volumeName, err := framework.CreatePDWithRetry()
|
volumeName, err := framework.CreatePDWithRetry()
|
||||||
framework.ExpectNoError(err)
|
framework.ExpectNoError(err)
|
||||||
return &azureVolume{
|
return &azureVolume{
|
||||||
|
Loading…
Reference in New Issue
Block a user