diff options
Diffstat (limited to 'plugin')
-rw-r--r-- | plugin/ready/ready.go | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/plugin/ready/ready.go b/plugin/ready/ready.go index a76a20084..2002e4a90 100644 --- a/plugin/ready/ready.go +++ b/plugin/ready/ready.go @@ -43,6 +43,13 @@ func (rd *ready) onStartup() error { rd.Unlock() rd.mux.HandleFunc("/ready", func(w http.ResponseWriter, _ *http.Request) { + rd.Lock() + defer rd.Unlock() + if !rd.done { + w.WriteHeader(http.StatusServiceUnavailable) + io.WriteString(w, "Shutting down") + return + } ok, todo := plugins.Ready() if ok { w.WriteHeader(http.StatusOK) |