From a2a1fb1dab53b76fa0cda57518d0c024d721ed1c Mon Sep 17 00:00:00 2001 From: Andrew Ayer Date: Tue, 17 Jun 2025 14:03:19 -0400 Subject: [PATCH] Set WaitDelay when executing sendmail and hooks --- monitor/notify.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/monitor/notify.go b/monitor/notify.go index faf4eff..090d98f 100644 --- a/monitor/notify.go +++ b/monitor/notify.go @@ -94,8 +94,9 @@ func sendEmail(ctx context.Context, to []string, notif *notification) error { sendmail := exec.CommandContext(sendmailCtx, sendmailPath(), args...) sendmail.Stdin = stdin sendmail.Stderr = stderr + sendmail.WaitDelay = 5 * time.Second - if err := sendmail.Run(); err == nil { + if err := sendmail.Run(); err == nil || err == exec.ErrWaitDelay { return nil } else if sendmailCtx.Err() != nil && ctx.Err() == nil { return fmt.Errorf("error sending email to %v: sendmail command timed out") @@ -116,8 +117,9 @@ func execScript(ctx context.Context, scriptName string, notif *notification) err cmd.Env = os.Environ() cmd.Env = append(cmd.Env, notif.environ...) cmd.Stderr = stderr + cmd.WaitDelay = 5 * time.Second - if err := cmd.Run(); err == nil { + if err := cmd.Run(); err == nil || err == exec.ErrWaitDelay { return nil } else if ctx.Err() != nil { return ctx.Err()