From d730df2a83e83ea3ec2990b213385cc34152c62e Mon Sep 17 00:00:00 2001 From: "Y.Horie" Date: Fri, 5 Jun 2026 10:41:35 +0900 Subject: [PATCH] cmd: colored error message in WrapCommandFuncForCobra (#7760) (#7768) Signed-off-by: Y.Horie Co-authored-by: Mohammed Al Sahaf --- cmd/cobra.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/cmd/cobra.go b/cmd/cobra.go index 14c8d2988..cc4792f17 100644 --- a/cmd/cobra.go +++ b/cmd/cobra.go @@ -149,8 +149,14 @@ func caddyCmdToCobra(caddyCmd Command) *cobra.Command { func WrapCommandFuncForCobra(f CommandFunc) func(cmd *cobra.Command, _ []string) error { return func(cmd *cobra.Command, _ []string) error { status, err := f(Flags{cmd.Flags()}) - if status > 1 { + if err != nil { + // Route the error through Caddy's logger so it receives the same + // colored, structured formatting as INFO/WARN output, rather than + // cobra's plain "Error: ..." line which lacks any highlighting. + caddy.Log().Error(err.Error()) cmd.SilenceErrors = true + } + if status > 1 { return &exitError{ExitCode: status, Err: err} } return err