From 0c66be1aae4f4bda4db97891c8e20239821ad4b3 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 8 Jan 2015 22:51:09 -0400 Subject: propellor spin --- src/Propellor/Spin.hs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/Propellor/Spin.hs') diff --git a/src/Propellor/Spin.hs b/src/Propellor/Spin.hs index a1035387..339428ba 100644 --- a/src/Propellor/Spin.hs +++ b/src/Propellor/Spin.hs @@ -112,8 +112,14 @@ getSshTarget target hst useip why = case headMaybe configips of Nothing -> return target Just ip -> do - warningMessage $ "DNS seems out of date for " ++ target ++ " (" ++ why ++ "); using IP address from configuration instead." - return ip + -- If we're being asked to run on the local host, + -- ignore DNS. + s <- takeWhile (/= '\n') <$> readProcess "hostname" ["-f"] + if s == target + then return target + else do + warningMessage $ "DNS seems out of date for " ++ target ++ " (" ++ why ++ "); using IP address from configuration instead." + return ip configips = map fromIPAddr $ mapMaybe getIPAddr $ S.toList $ _dns $ hostInfo hst -- cgit v1.2.3