From 07d334f1ee74bc9b1822940492ee0299058e717b Mon Sep 17 00:00:00 2001 From: ZeroMagic Date: Tue, 2 Jun 2020 06:58:45 +0000 Subject: [PATCH] Add function GetFileShare in Azure Cloud Provider Signed-off-by: ZeroMagic --- .../azure/azure_file.go | 8 ++++++++ .../azure/azure_storage.go | 5 +++++ .../clients/fileclient/azure_fileclient.go | 5 +++++ .../azure/clients/fileclient/interface.go | 5 +++++ .../clients/fileclient/mockfileclient/BUILD | 5 ++++- .../fileclient/mockfileclient/interface.go | 19 +++++++++++++++++-- 6 files changed, 44 insertions(+), 3 deletions(-) diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_file.go b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_file.go index d1ec2f1080a..d8109c20cea 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_file.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_file.go @@ -18,6 +18,10 @@ limitations under the License. package azure +import ( + "github.com/Azure/azure-sdk-for-go/services/storage/mgmt/2019-06-01/storage" +) + // create file share func (az *Cloud) createFileShare(resourceGroupName, accountName, name string, sizeGiB int) error { return az.FileClient.CreateFileShare(resourceGroupName, accountName, name, sizeGiB) @@ -30,3 +34,7 @@ func (az *Cloud) deleteFileShare(resourceGroupName, accountName, name string) er func (az *Cloud) resizeFileShare(resourceGroupName, accountName, name string, sizeGiB int) error { return az.FileClient.ResizeFileShare(resourceGroupName, accountName, name, sizeGiB) } + +func (az *Cloud) getFileShare(resourceGroupName, accountName, name string) (storage.FileShare, error) { + return az.FileClient.GetFileShare(resourceGroupName, accountName, name) +} diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_storage.go b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_storage.go index 8f02767b189..3a9d3435764 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_storage.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_storage.go @@ -66,3 +66,8 @@ func (az *Cloud) DeleteFileShare(resourceGroup, accountName, shareName string) e func (az *Cloud) ResizeFileShare(resourceGroup, accountName, name string, sizeGiB int) error { return az.resizeFileShare(resourceGroup, accountName, name, sizeGiB) } + +// GetFileShare gets a file share +func (az *Cloud) GetFileShare(resourceGroupName, accountName, name string) (storage.FileShare, error) { + return az.getFileShare(resourceGroupName, accountName, name) +} diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/azure_fileclient.go b/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/azure_fileclient.go index 907093201af..99e7e9ff82f 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/azure_fileclient.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/azure_fileclient.go @@ -89,3 +89,8 @@ func (c *Client) ResizeFileShare(resourceGroupName, accountName, name string, si return nil } + +// GetFileShare gets a file share +func (c *Client) GetFileShare(resourceGroupName, accountName, name string) (storage.FileShare, error) { + return c.fileSharesClient.Get(context.Background(), resourceGroupName, accountName, name) +} diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/interface.go b/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/interface.go index f24753b6884..c2f99e6a6fd 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/interface.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/interface.go @@ -18,10 +18,15 @@ limitations under the License. package fileclient +import ( + "github.com/Azure/azure-sdk-for-go/services/storage/mgmt/2019-06-01/storage" +) + // Interface is the client interface for creating file shares, interface for test injection. // mockgen -source=$GOPATH/src/k8s.io/kubernetes/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/interface.go -package=mockfileclient Interface > $GOPATH/src/k8s.io/kubernetes/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient/interface.go type Interface interface { CreateFileShare(resourceGroupName, accountName, name string, sizeGiB int) error DeleteFileShare(resourceGroupName, accountName, name string) error ResizeFileShare(resourceGroupName, accountName, name string, sizeGiB int) error + GetFileShare(resourceGroupName, accountName, name string) (storage.FileShare, error) } diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient/BUILD b/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient/BUILD index e49267c2968..c249679c9a5 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient/BUILD +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient/BUILD @@ -9,7 +9,10 @@ go_library( importmap = "k8s.io/kubernetes/vendor/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient", importpath = "k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient", visibility = ["//visibility:public"], - deps = ["//vendor/github.com/golang/mock/gomock:go_default_library"], + deps = [ + "//vendor/github.com/Azure/azure-sdk-for-go/services/storage/mgmt/2019-06-01/storage:go_default_library", + "//vendor/github.com/golang/mock/gomock:go_default_library", + ], ) filegroup( diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient/interface.go b/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient/interface.go index 341ea9ed0ed..b6f0b21c31f 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient/interface.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/clients/fileclient/mockfileclient/interface.go @@ -19,9 +19,9 @@ limitations under the License. package mockfileclient import ( - reflect "reflect" - + storage "github.com/Azure/azure-sdk-for-go/services/storage/mgmt/2019-06-01/storage" gomock "github.com/golang/mock/gomock" + reflect "reflect" ) // MockInterface is a mock of Interface interface @@ -88,3 +88,18 @@ func (mr *MockInterfaceMockRecorder) ResizeFileShare(resourceGroupName, accountN mr.mock.ctrl.T.Helper() return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ResizeFileShare", reflect.TypeOf((*MockInterface)(nil).ResizeFileShare), resourceGroupName, accountName, name, sizeGiB) } + +// GetFileShare mocks base method +func (m *MockInterface) GetFileShare(resourceGroupName, accountName, name string) (storage.FileShare, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetFileShare", resourceGroupName, accountName, name) + ret0, _ := ret[0].(storage.FileShare) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetFileShare indicates an expected call of GetFileShare +func (mr *MockInterfaceMockRecorder) GetFileShare(resourceGroupName, accountName, name interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetFileShare", reflect.TypeOf((*MockInterface)(nil).GetFileShare), resourceGroupName, accountName, name) +}