From 94e73826a2c21e968804706b1955aea239220a1a Mon Sep 17 00:00:00 2001
From: wangpengfei <274878379@qq.com>
Date: 星期一, 05 六月 2023 16:38:19 +0800
Subject: [PATCH] fix

---
 src/util/util.go |   27 +++++++++++++++++++++++++++
 1 files changed, 27 insertions(+), 0 deletions(-)

diff --git a/src/util/util.go b/src/util/util.go
index f396fcd..cb8dc2c 100644
--- a/src/util/util.go
+++ b/src/util/util.go
@@ -3,9 +3,13 @@
 import (
 	"context"
 	"crypto/tls"
+	"flag"
 	"fmt"
+	"k8s.io/client-go/kubernetes"
+	"k8s.io/client-go/tools/clientcmd"
 	"net/http"
 	"os"
+	"path/filepath"
 	"time"
 
 	"golang.org/x/crypto/ssh"
@@ -145,3 +149,26 @@
 	fmt.Println("kubectl has been installed on the remote server.")
 	return nil
 }
+
+var kubeConfig *string
+
+func GetClient() (*kubernetes.Clientset, error) {
+	// 閰嶇疆 Kubernetes 闆嗙兢鐨� kubeconfig 璺緞
+	if kubeConfig == nil {
+		kubeConfig = flag.String("kubeconfig", filepath.Join(HomeDir(), ".kube", "config"), "kubeconfig file")
+		flag.Parse()
+	}
+
+	// 鍒涘缓 Kubernetes 瀹㈡埛绔�
+	config, err := clientcmd.BuildConfigFromFlags("", *kubeConfig)
+	if err != nil {
+		panic(err.Error())
+	}
+
+	clientset, err := kubernetes.NewForConfig(config)
+	if err != nil {
+		panic(err.Error())
+	}
+
+	return clientset, nil
+}

--
Gitblit v1.8.0