From 2ad213b923c4475efe7d76dfdcbb8323616a6a3a Mon Sep 17 00:00:00 2001 From: wangpengfei <274878379@qq.com> Date: 星期四, 08 六月 2023 14:30:37 +0800 Subject: [PATCH] fix 修改 util Cluster 根据ClusterId 保存并读取kube config --- src/main/main.go | 14 ++++++++++++-- src/cluster/cluster.go | 2 +- src/util/util.go | 18 +++++++++--------- 3 files changed, 22 insertions(+), 12 deletions(-) diff --git a/src/cluster/cluster.go b/src/cluster/cluster.go index 3af2437..0b30018 100644 --- a/src/cluster/cluster.go +++ b/src/cluster/cluster.go @@ -236,7 +236,7 @@ if err != nil { log.Fatalf("Failed to get home directory: %v", err) } - kubeconfigDir := filepath.Join(homeDir, ".kube") + kubeconfigDir := filepath.Join(homeDir, ".kube", clusterName) err = os.MkdirAll(kubeconfigDir, 0700) if err != nil { log.Fatalf("Failed to create .kube directory: %v", err) diff --git a/src/main/main.go b/src/main/main.go index e3e8f81..f996ed0 100644 --- a/src/main/main.go +++ b/src/main/main.go @@ -214,7 +214,12 @@ os.Exit(1) } - err = k8s.CreateDeploymentAndService(clientset, *createNamespace, *createDeployment, *createService) + err = k8s.CreateDeploymentAndService(k8s.Config{ + Client: clientset, + NameSpace: *createNamespace, + DeploymentName: *createDeployment, + ServiceName: *createService, + }) if err != nil { panic(err) } @@ -282,7 +287,12 @@ for _, ns := range namespaces { deploymentName := ns serviceName := ns - err := k8s.CreateDeploymentAndService(clientset, ns, deploymentName, serviceName) + err := k8s.CreateDeploymentAndService(k8s.Config{ + Client: clientset, + NameSpace: ns, + DeploymentName: deploymentName, + ServiceName: serviceName, + }) if err != nil { log.Printf("\033[97;41mFailed to create resources in namespace %s: %v\033[0m\n", ns, err) } else { diff --git a/src/util/util.go b/src/util/util.go index cb8dc2c..9e0170e 100644 --- a/src/util/util.go +++ b/src/util/util.go @@ -3,13 +3,11 @@ 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" @@ -150,17 +148,19 @@ return nil } -var kubeConfig *string +var kubeConfig string -func GetClient() (*kubernetes.Clientset, error) { +func GetClient(cluster string) (*kubernetes.Clientset, error) { // 閰嶇疆 Kubernetes 闆嗙兢鐨� kubeconfig 璺緞 - if kubeConfig == nil { - kubeConfig = flag.String("kubeconfig", filepath.Join(HomeDir(), ".kube", "config"), "kubeconfig file") - flag.Parse() - } + //if kubeConfig == nil { + // kubeConfig = flag.String("kubeconfig", filepath.Join(HomeDir(), ".kube", cluster, "config"), "kubeconfig file") + // flag.Parse() + //} + + kubeConfig = fmt.Sprintf("%s/.kube/%s/config", HomeDir(), cluster) // 鍒涘缓 Kubernetes 瀹㈡埛绔� - config, err := clientcmd.BuildConfigFromFlags("", *kubeConfig) + config, err := clientcmd.BuildConfigFromFlags("", kubeConfig) if err != nil { panic(err.Error()) } -- Gitblit v1.8.0