From 54182fd08797eb82fe39dd67b7b5039aaa1dc0a1 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 9 May 2017 16:27:45 -0400 Subject: Server: DEBUG_ME_FROM_EMAIL can be used to specify the --from-email. This is used in debug-me.default to encourage configuring it. --- Server.hs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'Server.hs') diff --git a/Server.hs b/Server.hs index ce4242c..70ded97 100644 --- a/Server.hs +++ b/Server.hs @@ -33,6 +33,7 @@ import System.IO import System.Directory import System.Mem.Weak import Network.Mail.Mime +import System.Environment type ServerState = M.Map SessionID Session @@ -95,7 +96,9 @@ closeSession :: Session -> STM () closeSession (Session bchan _ _) = closeTMChan bchan server :: ServerOpts -> IO () -server o = runSettings settings . app o =<< newServerState +server o = do + o' <- checkEnv o + runSettings settings . app o' =<< newServerState where settings = -- Prefer IPv6 but allow IPv4 as well @@ -105,6 +108,12 @@ server o = runSettings settings . app o =<< newServerState setPort (serverPort o) $ defaultSettings +checkEnv :: ServerOpts -> IO ServerOpts +checkEnv o = go <$> lookupEnv "DEBUG_ME_FROM_EMAIL" + where + go Nothing = o + go (Just email) = o { serverEmail = Just (T.pack email) } + app :: ServerOpts -> TVar ServerState -> Application app o ssv = websocketsOr connectionOptions (websocketApp o ssv) webapp where -- cgit v1.2.3