From 064c0874e5fd041c4641ef873d1bf72ac98a184d Mon Sep 17 00:00:00 2001
From: wangpengfei <274878379@qq.com>
Date: 星期五, 02 六月 2023 16:26:09 +0800
Subject: [PATCH] Merge branch 'master' into fly_develop

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

diff --git a/src/util/util.go b/src/util/util.go
index a26d5d8..1831dae 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"
@@ -107,10 +111,10 @@
 	}
 
 	// 瀹夎Docker
-	installCommand := "sudo curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh get-docker.sh && sudo systemctl restart docker"
+	installCommand := "sudo curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh get-docker.sh && sudo systemctl start docker && sudo systemctl enable docker"
 	_, err = SSHExec(nodeIP, sshUsername, sshPassword, installCommand, sshPort)
 	if err != nil {
-		return fmt.Errorf("failed to install Docker on the remote server: %v", err)
+		return fmt.Errorf("failed to install Docker on the remote server:%v %v", nodeIP, err)
 	}
 
 	fmt.Println("Docker has been installed on the remote server.")
@@ -145,3 +149,22 @@
 	fmt.Println("kubectl has been installed on the remote server.")
 	return nil
 }
+
+func GetClient() (*kubernetes.Clientset, error) {
+	// 閰嶇疆 Kubernetes 闆嗙兢鐨� kubeconfig 璺緞
+	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