From b614cbd130b069e3db6d377a6bd71deb16f90c67 Mon Sep 17 00:00:00 2001 From: Justin Santa Barbara Date: Sat, 15 Oct 2016 13:12:31 -0400 Subject: [PATCH] Fix `kops get clusters` to support filtering by name We were using it in the upgrade docs, but it wasn't actually implemented. --- cmd/kops/get_cluster.go | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/cmd/kops/get_cluster.go b/cmd/kops/get_cluster.go index b60b261af4..70953213be 100644 --- a/cmd/kops/get_cluster.go +++ b/cmd/kops/get_cluster.go @@ -48,9 +48,27 @@ func (c *GetClustersCmd) Run(args []string) error { } var clusters []*api.Cluster - for i := range clusterList.Items { - clusters = append(clusters, &clusterList.Items[i]) + if len(args) != 0 { + m := make(map[string]*api.Cluster) + for i := range clusterList.Items { + c := &clusterList.Items[i] + m[c.Name] = c + } + for _, arg := range args { + ig := m[arg] + if ig == nil { + return fmt.Errorf("cluster not found %q", arg) + } + + clusters = append(clusters, ig) + } + } else { + for i := range clusterList.Items { + c := &clusterList.Items[i] + clusters = append(clusters, c) + } } + if len(clusters) == 0 { fmt.Fprintf(os.Stderr, "No clusters found\n") return nil