Skip to content

Commit bc5819f

Browse files
committed
speed up namespace lookup
1 parent 4a29697 commit bc5819f

File tree

2 files changed

+36
-0
lines changed

2 files changed

+36
-0
lines changed

http/handler/kubernetes/handler.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,8 @@ func NewHandler(notaryService *security.NotaryService, kubernetesDeployer *exec.
2525
h.Handle("/kubernetes/stack",
2626
notaryService.DigitalSignatureVerification(httperror.LoggerHandler(h.kubernetesDeploy))).Methods(http.MethodPost)
2727

28+
h.Handle("/kubernetes/namespaces",
29+
notaryService.DigitalSignatureVerification(httperror.LoggerHandler(h.kubernetesGetNamespaces))).Methods(http.MethodGet)
30+
2831
return h
2932
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package kubernetes
2+
3+
import (
4+
"fmt"
5+
"net/http"
6+
7+
httperror "github.com/portainer/portainer/pkg/libhttp/error"
8+
"github.com/portainer/portainer/pkg/libhttp/request"
9+
"github.com/portainer/portainer/pkg/libhttp/response"
10+
)
11+
12+
type getNamespacePayload struct{}
13+
14+
func (payload *getNamespacePayload) Validate(r *http.Request) error {
15+
16+
return nil
17+
}
18+
19+
func (handler *Handler) kubernetesGetNamespaces(rw http.ResponseWriter, r *http.Request) *httperror.HandlerError {
20+
var payload getNamespacePayload
21+
err := request.DecodeAndValidateJSONPayload(r, &payload)
22+
if err != nil {
23+
return httperror.BadRequest("Invalid request payload", err)
24+
}
25+
26+
for _, header := range r.Header {
27+
for _, value := range header {
28+
fmt.Println("Header:", value)
29+
}
30+
}
31+
32+
return response.Empty(rw)
33+
}

0 commit comments

Comments
 (0)