From e10ca0800469bcae1d208d2d4540e44b21ee1edf Mon Sep 17 00:00:00 2001 From: Sean Whitton Date: Sat, 22 Jul 2017 10:53:02 -0700 Subject: avoid one failure of Reboot.toKernelNewerThan when /boot not mounted If the running kernel is new enough, there is no need to look at the kernels installed on the system. --- src/Propellor/Property/Reboot.hs | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src/Propellor/Property/Reboot.hs') diff --git a/src/Propellor/Property/Reboot.hs b/src/Propellor/Property/Reboot.hs index 3781cd7b..909d87fb 100644 --- a/src/Propellor/Property/Reboot.hs +++ b/src/Propellor/Property/Reboot.hs @@ -78,15 +78,16 @@ toKernelNewerThan ver = property' ("reboot to kernel newer than " ++ ver) $ \w -> do wantV <- tryReadVersion ver runningV <- tryReadVersion =<< liftIO runningKernelVersion - installedV <- maximum <$> - (mapM tryReadVersion =<< liftIO installedKernelVersions) if runningV >= wantV then noChange - else if installedV >= wantV - then ensureProperty w now - else errorMessage $ - "kernel newer than " - ++ ver - ++ " not installed" + else maximum <$> installedVs >>= \installedV -> + if installedV >= wantV + then ensureProperty w now + else errorMessage $ + "kernel newer than " + ++ ver + ++ " not installed" + where + installedVs = mapM tryReadVersion =<< liftIO installedKernelVersions runningInstalledKernel :: IO Bool runningInstalledKernel = do -- cgit v1.2.3