1// +build !providerless
2
3/*
4Copyright 2020 The Kubernetes Authors.
5
6Licensed under the Apache License, Version 2.0 (the "License");
7you may not use this file except in compliance with the License.
8You may obtain a copy of the License at
9
10    http://www.apache.org/licenses/LICENSE-2.0
11
12Unless required by applicable law or agreed to in writing, software
13distributed under the License is distributed on an "AS IS" BASIS,
14WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15See the License for the specific language governing permissions and
16limitations under the License.
17*/
18
19package fileclient
20
21import (
22	"github.com/Azure/azure-sdk-for-go/services/storage/mgmt/2019-06-01/storage"
23)
24
25// Interface is the client interface for creating file shares, interface for test injection.
26// 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
27type Interface interface {
28	CreateFileShare(resourceGroupName, accountName string, shareOptions *ShareOptions) error
29	DeleteFileShare(resourceGroupName, accountName, name string) error
30	ResizeFileShare(resourceGroupName, accountName, name string, sizeGiB int) error
31	GetFileShare(resourceGroupName, accountName, name string) (storage.FileShare, error)
32}
33