From b0b52dc4327b7e8978d0fe84ac5b58488a957180 Mon Sep 17 00:00:00 2001 From: "David J. Allen" Date: Thu, 21 Nov 2024 14:27:22 -0700 Subject: [PATCH 1/3] feat: added healthcheck to server --- pkg/server/server.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pkg/server/server.go b/pkg/server/server.go index a89e04a..915dc00 100644 --- a/pkg/server/server.go +++ b/pkg/server/server.go @@ -116,6 +116,7 @@ func (s *Server) Serve() error { // protected routes if using auth r.HandleFunc("/generate", s.Generate(opts...)) + r.HandleFunc("/status", s.GetStatus) r.Post("/targets", s.createTarget) }) } else { @@ -225,6 +226,19 @@ func (s *Server) loadTargets() { } } +func (s *Server) GetStatus(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Content-Type", "application/json") + data := map[string]any{ + "code": 200, + "message": "Configurator is healthy", + } + err := json.NewEncoder(w).Encode(data) + if err != nil { + fmt.Printf("failed to encode JSON: %v\n", err) + return + } +} + // Create a new target with name, generator, templates, and files. // // Example: From ba3690cb5d35a93be96c5e5fac6f2fa2735f29a9 Mon Sep 17 00:00:00 2001 From: "David J. Allen" Date: Tue, 3 Dec 2024 11:55:53 -0700 Subject: [PATCH 2/3] refactor: moved /status endpoint to always be public route --- pkg/server/server.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/server/server.go b/pkg/server/server.go index 915dc00..bb1f736 100644 --- a/pkg/server/server.go +++ b/pkg/server/server.go @@ -116,7 +116,6 @@ func (s *Server) Serve() error { // protected routes if using auth r.HandleFunc("/generate", s.Generate(opts...)) - r.HandleFunc("/status", s.GetStatus) r.Post("/targets", s.createTarget) }) } else { @@ -126,6 +125,7 @@ func (s *Server) Serve() error { } // always available public routes go here (none at the moment) + router.HandleFunc("/status", s.GetStatus) s.Handler = router return s.ListenAndServe() From 6b0ed4c03d86577526414e04782d5918005571af Mon Sep 17 00:00:00 2001 From: "David J. Allen" Date: Tue, 7 Jan 2025 13:27:17 -0700 Subject: [PATCH 3/3] server: changed endpoint from /status to /configurator/status --- pkg/server/server.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/server/server.go b/pkg/server/server.go index bb1f736..d10ccd7 100644 --- a/pkg/server/server.go +++ b/pkg/server/server.go @@ -125,7 +125,7 @@ func (s *Server) Serve() error { } // always available public routes go here (none at the moment) - router.HandleFunc("/status", s.GetStatus) + router.HandleFunc("/configurator/status", s.GetStatus) s.Handler = router return s.ListenAndServe()