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