From 0e22b2dfe7a24c528fb8ac58ece089bd032f5478 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期二, 26 十二月 2023 17:49:34 +0800 Subject: [PATCH] 支持添加额外的env --- src/k8s/create.go | 31 ++++++++++++++++++++++++------- 1 files changed, 24 insertions(+), 7 deletions(-) diff --git a/src/k8s/create.go b/src/k8s/create.go index ae36b1c..6c4ccc2 100644 --- a/src/k8s/create.go +++ b/src/k8s/create.go @@ -60,7 +60,7 @@ // 鍒涘缓澶氫釜 Namespace 涓嬬殑鐩稿悓鍚嶇О鐨� Deployment 鍜� Service for _, ns := range namespaces { - err = CreateDeploymentAndService(Config{Client: clientset, NameSpace: ns, DeploymentName: ns, ServiceName: ns}) + err = CreateDeploymentAndService(Config{Client: clientset, NameSpace: ns, DeploymentName: ns, ServiceName: ns}, nil) if err != nil { panic(err) } @@ -129,7 +129,7 @@ return nil } -func CreateDeploymentAndService(config Config) error { +func CreateDeploymentAndService(config Config, extendEnvs map[string]string) error { fmt.Println("\033[1;37;40mCreating resources in Namespace:", config.NameSpace, "\033[0m") // 妫�娴嬪苟鍒犻櫎宸插瓨鍦ㄧ殑 Deployment 鍜� Service @@ -144,7 +144,7 @@ } // 鍒涘缓 Deployment - err = createDeployment(config) + err = createDeployment(config, extendEnvs) if err != nil { return err } @@ -181,10 +181,7 @@ return nil } - -func createDeployment(config Config) error { - fmt.Println("\033[1;37;40mCreating Deployment:", config.DeploymentName, "\033[0m") - +func createEnv(config Config, pairs map[string]string) []apiv1.EnvVar { envs := []apiv1.EnvVar{ { Name: "GRPC_PORT", @@ -240,6 +237,26 @@ }) } + if len(pairs) > 0 { + for name, value := range pairs { + envs = append(envs, apiv1.EnvVar{ + Name: name, + Value: value, + }) + } + } + for name, value := range pairs { + envs = append(envs, apiv1.EnvVar{ + Name: name, + Value: value, + }) + } + return envs +} +func createDeployment(config Config, extendEnvs map[string]string) error { + fmt.Println("\033[1;37;40mCreating Deployment:", config.DeploymentName, "\033[0m") + + envs := createEnv(config, extendEnvs) deployment := &appsv1.Deployment{ ObjectMeta: metav1.ObjectMeta{ Name: config.DeploymentName, -- Gitblit v1.8.0