diff --git a/internal/backup/csi_snapshotter.go b/internal/backup/csi_snapshotter.go index f8d14354..cd8cd14c 100644 --- a/internal/backup/csi_snapshotter.go +++ b/internal/backup/csi_snapshotter.go @@ -20,7 +20,6 @@ import ( "fmt" snapshotv1beta1api "github.com/kubernetes-csi/external-snapshotter/v2/pkg/apis/volumesnapshot/v1beta1" - snapshotter "github.com/kubernetes-csi/external-snapshotter/v2/pkg/client/clientset/versioned" "github.com/pkg/errors" "github.com/sirupsen/logrus" @@ -28,9 +27,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/runtime" - "k8s.io/client-go/kubernetes" _ "k8s.io/client-go/plugin/pkg/client/auth/gcp" - "k8s.io/client-go/tools/clientcmd" "github.com/vmware-tanzu/velero-plugin-for-csi/internal/util" velerov1api "github.com/vmware-tanzu/velero/pkg/apis/velero/v1" @@ -83,7 +80,7 @@ func (p *CSISnapshotter) Execute(item runtime.Unstructured, backup *velerov1api. return nil, nil, errors.WithStack(err) } - client, snapshotClient, err := getClients() + client, snapshotClient, err := util.GetClients() if err != nil { return nil, nil, errors.WithStack(err) } @@ -194,25 +191,3 @@ func (p *CSISnapshotter) Execute(item runtime.Unstructured, backup *velerov1api. return &unstructured.Unstructured{Object: pvcMap}, additionalItems, nil } - -func getClients() (*kubernetes.Clientset, *snapshotter.Clientset, error) { - loadingRules := clientcmd.NewDefaultClientConfigLoadingRules() - configOverrides := &clientcmd.ConfigOverrides{} - kubeConfig := clientcmd.NewNonInteractiveDeferredLoadingClientConfig(loadingRules, configOverrides) - clientConfig, err := kubeConfig.ClientConfig() - if err != nil { - return nil, nil, errors.WithStack(err) - } - - client, err := kubernetes.NewForConfig(clientConfig) - if err != nil { - return nil, nil, errors.WithStack(err) - } - - snapshotterClient, err := snapshotter.NewForConfig(clientConfig) - if err != nil { - return nil, nil, errors.WithStack(err) - } - - return client, snapshotterClient, nil -} diff --git a/internal/util/util.go b/internal/util/util.go index 82a689ef..a1f834fd 100644 --- a/internal/util/util.go +++ b/internal/util/util.go @@ -21,14 +21,17 @@ import ( "strings" "time" - snapshotv1beta1api "github.com/kubernetes-csi/external-snapshotter/v2/pkg/apis/volumesnapshot/v1beta1" - snapshotter "github.com/kubernetes-csi/external-snapshotter/v2/pkg/client/clientset/versioned/typed/volumesnapshot/v1beta1" "github.com/pkg/errors" "github.com/sirupsen/logrus" + + snapshotv1beta1api "github.com/kubernetes-csi/external-snapshotter/v2/pkg/apis/volumesnapshot/v1beta1" + snapshotterClientSet "github.com/kubernetes-csi/external-snapshotter/v2/pkg/client/clientset/versioned" + snapshotter "github.com/kubernetes-csi/external-snapshotter/v2/pkg/client/clientset/versioned/typed/volumesnapshot/v1beta1" corev1api "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/client-go/kubernetes" corev1client "k8s.io/client-go/kubernetes/typed/core/v1" - _ "k8s.io/client-go/plugin/pkg/client/auth/gcp" + "k8s.io/client-go/tools/clientcmd" ) const ( @@ -166,3 +169,25 @@ func GetVolumeSnapshotContentForVolumeSnapshot(volSnap *snapshotv1beta1api.Volum return snapshotContent, nil } + +func GetClients() (*kubernetes.Clientset, *snapshotterClientSet.Clientset, error) { + loadingRules := clientcmd.NewDefaultClientConfigLoadingRules() + configOverrides := &clientcmd.ConfigOverrides{} + kubeConfig := clientcmd.NewNonInteractiveDeferredLoadingClientConfig(loadingRules, configOverrides) + clientConfig, err := kubeConfig.ClientConfig() + if err != nil { + return nil, nil, errors.WithStack(err) + } + + client, err := kubernetes.NewForConfig(clientConfig) + if err != nil { + return nil, nil, errors.WithStack(err) + } + + snapshotterClient, err := snapshotterClientSet.NewForConfig(clientConfig) + if err != nil { + return nil, nil, errors.WithStack(err) + } + + return client, snapshotterClient, nil +}