summaryrefslogtreecommitdiffstats
path: root/src/ncm/api/clusterhandler.go
diff options
context:
space:
mode:
authorRitu Sood <ritu.sood@intel.com>2020-03-03 00:44:52 -0800
committerEric Multanen <eric.w.multanen@intel.com>2020-04-07 09:20:19 -0700
commitee5748eca6350222051125b5e2313f78da00efbe (patch)
tree0af1e364a976787a7c640e676a159e72d9be8a3e /src/ncm/api/clusterhandler.go
parentec83b3d3bda5501b20e05efae198202b29396c4a (diff)
Adding function to Query cluster based on label
Add Query endpoint and implements returning list of clusters with label. Issue-ID: MULTICLOUD-922 Signed-off-by: Ritu Sood <ritu.sood@intel.com> Signed-off-by: Eric Multanen <eric.w.multanen@intel.com> Change-Id: I879b5e9002a0cbc9191abb99f1e164ee2b1c6581
Diffstat (limited to 'src/ncm/api/clusterhandler.go')
-rw-r--r--src/ncm/api/clusterhandler.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/ncm/api/clusterhandler.go b/src/ncm/api/clusterhandler.go
index cb147a8a..8c50f720 100644
--- a/src/ncm/api/clusterhandler.go
+++ b/src/ncm/api/clusterhandler.go
@@ -194,6 +194,23 @@ func (h clusterHandler) getClusterHandler(w http.ResponseWriter, r *http.Request
provider := vars["provider-name"]
name := vars["name"]
+ label := r.URL.Query().Get("label")
+ if len(label) != 0 {
+ ret, err := h.client.GetClustersWithLabel(provider, label)
+ if err != nil {
+ http.Error(w, err.Error(), http.StatusInternalServerError)
+ return
+ }
+ w.Header().Set("Content-Type", "application/json")
+ w.WriteHeader(http.StatusOK)
+ err = json.NewEncoder(w).Encode(ret)
+ if err != nil {
+ http.Error(w, err.Error(), http.StatusInternalServerError)
+ return
+ }
+ return
+ }
+
// handle the get all clusters case - return a list of only the json parts
if len(name) == 0 {
var retList []moduleLib.Cluster