From e8e48a041300a15630b7bcb652dc40377cc89dd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=87=91=E6=88=9F?= Date: Thu, 12 Dec 2019 21:05:09 +0800 Subject: [PATCH] add label parameter for mesh command --- pkg/kt/action/mesh_action.go | 2 +- pkg/kt/connect/mesh.go | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/pkg/kt/action/mesh_action.go b/pkg/kt/action/mesh_action.go index 2537478..ffafc51 100644 --- a/pkg/kt/action/mesh_action.go +++ b/pkg/kt/action/mesh_action.go @@ -40,7 +40,7 @@ func (action *Action) Mesh(swap string, expose string, userHome string, pidFile panic(err.Error()) } - workload, err := factory.Mesh(clientset) + workload, err := factory.Mesh(clientset, util.String2Map(action.Labels)) if err != nil { panic(err.Error()) } diff --git a/pkg/kt/connect/mesh.go b/pkg/kt/connect/mesh.go index 6c87f3e..806649f 100644 --- a/pkg/kt/connect/mesh.go +++ b/pkg/kt/connect/mesh.go @@ -12,13 +12,14 @@ import ( ) // Mesh prepare swap deployment -func (c *Connect) Mesh(clientset *kubernetes.Clientset) (workload string, err error) { - workload, podIP, podName, err := c.createMeshShadown(clientset) +func (c *Connect) Mesh(clientset *kubernetes.Clientset, labels map[string]string) (workload string, err error) { + workload, podIP, podName, err := c.createMeshShadown(clientset, labels) remotePortForward(c.Expose, c.Kubeconfig, c.Namespace, podName, podIP, c.Debug) return } -func (c *Connect) createMeshShadown(clientset *kubernetes.Clientset) (shadowName string, podIP string, podName string, err error) { +func (c *Connect) createMeshShadown(clientset *kubernetes.Clientset, + extraLabels map[string]string) (shadowName string, podIP string, podName string, err error) { deploymentsClient := clientset.AppsV1().Deployments(c.Namespace) origin, err := deploymentsClient.Get(c.Swap, metav1.GetOptions{}) if err != nil { @@ -33,7 +34,9 @@ func (c *Connect) createMeshShadown(clientset *kubernetes.Clientset) (shadowName "control-by": "kt", "version": meshVersion, } - + for k, v := range extraLabels { + labels[k] = v + } for k, v := range origin.Spec.Selector.MatchLabels { labels[k] = v }