Skip to content

Commit

Permalink
pod and container namespace completion (#2103)
Browse files Browse the repository at this point in the history
  • Loading branch information
gnmahanth committed Apr 25, 2024
1 parent e3a0e38 commit 383697d
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 0 deletions.
6 changes: 6 additions & 0 deletions deepfence_server/apiDocs/operation.go
Original file line number Diff line number Diff line change
Expand Up @@ -914,4 +914,10 @@ func (d *OpenAPIDocs) AddCompletionOperations() {
d.AddOperation("completeComplianceInfo", http.MethodPost, "/deepfence/complete/compliance",
"Get Completion for compliance fields", "Complete compliance info",
http.StatusOK, []string{tagCompletion}, bearerToken, new(CompletionNodeFieldReq), new(CompletionNodeFieldRes))
d.AddOperation("completePodInfo", http.MethodPost, "/deepfence/complete/pod",
"Get Completion for Pod fields", "Complete Pod info",
http.StatusOK, []string{tagCompletion}, bearerToken, new(CompletionNodeFieldReq), new(CompletionNodeFieldRes))
d.AddOperation("completeContainer", http.MethodPost, "/deepfence/complete/container",
"Get Completion for Container fields", "Complete Container info",
http.StatusOK, []string{tagCompletion}, bearerToken, new(CompletionNodeFieldReq), new(CompletionNodeFieldRes))
}
10 changes: 10 additions & 0 deletions deepfence_server/handler/completion.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,23 @@ func (h *Handler) CompleteVulnerabilityInfo(w http.ResponseWriter, r *http.Reque
func (h *Handler) CompleteHostInfo(w http.ResponseWriter, r *http.Request) {
genericCompleteInfoHandler[model.Host](w, r, h)
}

func (h *Handler) CompleteComplianceInfo(w http.ResponseWriter, r *http.Request) {
genericCompleteInfoHandler[model.ComplianceRule](w, r, h)
}

func (h *Handler) CompleteCloudComplianceInfo(w http.ResponseWriter, r *http.Request) {
genericCompleteInfoHandler[model.CloudCompliance](w, r, h)
}

func (h *Handler) CompletePodInfo(w http.ResponseWriter, r *http.Request) {
genericCompleteInfoHandler[model.Pod](w, r, h)
}

func (h *Handler) CompleteContainerInfo(w http.ResponseWriter, r *http.Request) {
genericCompleteInfoHandler[model.Container](w, r, h)
}

func genericCompleteInfoHandler[T reporters.Cypherable](w http.ResponseWriter, r *http.Request, h *Handler) {
defer r.Body.Close()
var req completion.CompletionNodeFieldReq
Expand Down
2 changes: 2 additions & 0 deletions deepfence_server/router/router.go
Original file line number Diff line number Diff line change
Expand Up @@ -264,6 +264,8 @@ func SetupRoutes(r *chi.Mux, serverPort string, serveOpenapiDocs bool, ingestC c
r.Post("/host", dfHandler.CompleteHostInfo)
r.Post("/cloud-compliance", dfHandler.CompleteCloudComplianceInfo)
r.Post("/compliance", dfHandler.CompleteComplianceInfo)
r.Post("/pod", dfHandler.CompletePodInfo)
r.Post("/container", dfHandler.CompleteContainerInfo)
})

r.Route("/search", func(r chi.Router) {
Expand Down

0 comments on commit 383697d

Please sign in to comment.