mirror of https://github.com/helm/helm
parent
0dbd397759
commit
74295c3b4a
@ -1,15 +0,0 @@
|
|||||||
package list
|
|
||||||
|
|
||||||
type ListRequest struct {
|
|
||||||
RequestID string
|
|
||||||
}
|
|
||||||
|
|
||||||
type ListRespose struct {
|
|
||||||
Status bool
|
|
||||||
Data []HelmRelease
|
|
||||||
}
|
|
||||||
|
|
||||||
type HelmRelease struct {
|
|
||||||
Release string `json:"release"`
|
|
||||||
Namespace string `json:"namespace"`
|
|
||||||
}
|
|
@ -1,52 +0,0 @@
|
|||||||
package list
|
|
||||||
|
|
||||||
import (
|
|
||||||
"encoding/json"
|
|
||||||
"fmt"
|
|
||||||
"net/http"
|
|
||||||
|
|
||||||
"helm.sh/helm/v3/pkg/action"
|
|
||||||
"helm.sh/helm/v3/pkg/servercontext"
|
|
||||||
)
|
|
||||||
|
|
||||||
func Handler() http.Handler {
|
|
||||||
return http.HandlerFunc(func(res http.ResponseWriter, req *http.Request) {
|
|
||||||
|
|
||||||
res.Header().Set("Content-Type", "application/json")
|
|
||||||
defer req.Body.Close()
|
|
||||||
|
|
||||||
var request ListRequest
|
|
||||||
decoder := json.NewDecoder(req.Body)
|
|
||||||
decoder.UseNumber()
|
|
||||||
|
|
||||||
if err := decoder.Decode(&request); err != nil {
|
|
||||||
fmt.Println("error in request")
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
request.RequestID = req.Header.Get("Request-Id")
|
|
||||||
|
|
||||||
list := action.NewList(servercontext.App().ActionConfig)
|
|
||||||
|
|
||||||
list.SetStateMask()
|
|
||||||
results, err := list.Run()
|
|
||||||
if err != nil {
|
|
||||||
fmt.Printf("error while running helm list %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
var helmReleases []HelmRelease
|
|
||||||
for _, res := range results {
|
|
||||||
r := HelmRelease{Release: res.Name, Namespace: res.Namespace}
|
|
||||||
helmReleases = append(helmReleases, r)
|
|
||||||
}
|
|
||||||
|
|
||||||
response := ListRespose{Status: true, Data: helmReleases}
|
|
||||||
payload, err := json.Marshal(response)
|
|
||||||
if err != nil {
|
|
||||||
fmt.Println("error parsing response")
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
res.Write(payload)
|
|
||||||
})
|
|
||||||
}
|
|
Loading…
Reference in new issue