diff options
-rw-r--r-- | admin.go | 14 | ||||
-rw-r--r-- | cmd/commandfuncs.go | 2 |
2 files changed, 10 insertions, 6 deletions
@@ -561,14 +561,20 @@ func handleConfigID(w http.ResponseWriter, r *http.Request) error { } func handleStop(w http.ResponseWriter, r *http.Request) error { - defer func() { - Log().Named("admin.api").Info("stopping now, bye!! 👋") - os.Exit(0) - }() err := handleUnload(w, r) if err != nil { Log().Named("admin.api").Error("unload error", zap.Error(err)) } + go func() { + err := stopAdminServer(adminServer) + var exitCode int + if err != nil { + exitCode = ExitCodeFailedQuit + Log().Named("admin.api").Error("failed to stop admin server gracefully", zap.Error(err)) + } + Log().Named("admin.api").Info("stopping now, bye!! 👋") + os.Exit(exitCode) + }() return nil } diff --git a/cmd/commandfuncs.go b/cmd/commandfuncs.go index 3cba47a..5079449 100644 --- a/cmd/commandfuncs.go +++ b/cmd/commandfuncs.go @@ -239,8 +239,6 @@ func cmdStop(fl Flags) (int, error) { if !found { return caddy.ExitCodeFailedStartup, fmt.Errorf("Caddy is not running") } - - fmt.Println(" success") } return caddy.ExitCodeSuccess, nil |