From 2858d900d9fbe3933dd61f75234e20f9f84c044d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B6ren=20Schneider?= <56670304+soerenschneider@users.noreply.github.com> Date: Thu, 21 Sep 2023 20:34:16 +0100 Subject: [PATCH] fix: actually honor 'safe for reboot' condition --- internal/app.go | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/internal/app.go b/internal/app.go index c70b3e9..2826898 100644 --- a/internal/app.go +++ b/internal/app.go @@ -78,22 +78,22 @@ func (app *ConditionalReboot) Start() { case group := <-app.rebootRequest: log.Info().Msgf("Reboot request from group '%s'", group.GetName()) - if !IsSafeToReboot() { - log.Warn().Msg("Not safe to reboot (yet), ignoring reboot request") - } - - if err := app.audit.Journal(actionToText(group)); err != nil { - log.Err(err).Msg("could not write journal") - } - - log.Info().Msg("Trying to reboot...") - if err := app.rebootImpl.Reboot(); err != nil { - RebootErrors.Set(1) - log.Error().Err(err).Msg("reboot failed") + if IsSafeToReboot() { + log.Info().Msg("Trying to reboot...") + if err := app.audit.Journal(actionToText(group)); err != nil { + log.Err(err).Msg("could not write journal") + } + + if err := app.rebootImpl.Reboot(); err != nil { + RebootErrors.Set(1) + log.Error().Err(err).Msg("Reboot failed") + } else { + log.Info().Msgf("Cancelling") + cancel() + time.Sleep(5 * time.Second) + } } else { - log.Info().Msgf("Cancelling") - cancel() - time.Sleep(5 * time.Second) + log.Warn().Msg("Not safe to reboot (yet), ignoring reboot request") } } }