Clarify README further, ensure production logger is used when set to PRODUCTION environment
This commit is contained in:
@ -39,6 +39,9 @@ encKey = do
|
||||
adminEmail :: IO String
|
||||
adminEmail = getEnv "ADMINEMAIL"
|
||||
|
||||
getRuntimeEnvironment :: IO String
|
||||
getRuntimeEnvironment = getEnv "ENVIRONMENT"
|
||||
|
||||
appPort :: IO String
|
||||
appPort = getEnv "APPLICATIONPORT"
|
||||
|
||||
|
@ -1,22 +1,28 @@
|
||||
module Core.HTTP ( app ) where
|
||||
|
||||
import Core.Configuration (adminEmail, confLinkLength)
|
||||
import Core.Configuration ( adminEmail
|
||||
, confLinkLength
|
||||
, getRuntimeEnvironment)
|
||||
import Core.Types
|
||||
|
||||
import Core.Templates (renderIndex, renderStyle)
|
||||
import Feature.Generation.HTTP as Generation
|
||||
import Feature.Sharing.HTTP as Sharing
|
||||
|
||||
import Control.Monad (void)
|
||||
import Control.Monad.Trans (liftIO)
|
||||
import Data.Maybe (Maybe (Nothing))
|
||||
import Network.Wai.Middleware.RequestLogger (logStdoutDev)
|
||||
import Network.Wai.Middleware.RequestLogger (logStdout, logStdoutDev)
|
||||
import Network.Wai.Middleware.Static
|
||||
import Web.Scotty
|
||||
|
||||
app :: PurrApp ()
|
||||
app = do
|
||||
app :: String -> PurrApp ()
|
||||
app env = do
|
||||
-- Middleware that are processed on every request
|
||||
middleware logStdoutDev
|
||||
case env of
|
||||
"production" -> middleware logStdout
|
||||
"prod" -> middleware logStdout
|
||||
_ -> middleware logStdoutDev
|
||||
middleware $ staticPolicy (noDots >-> addBase "data/assets/public")
|
||||
|
||||
-- Core Routes
|
||||
|
@ -27,5 +27,6 @@ main = do
|
||||
{- Get the configured port to run on and start the Scotty webserver app
|
||||
defined in HTTP.app -}
|
||||
appPortStr <- Configuration.appPort
|
||||
env <- Configuration.getRuntimeEnvironment
|
||||
let appPort = read appPortStr :: Int
|
||||
scotty appPort HTTP.app
|
||||
scotty appPort (HTTP.app env)
|
||||
|
Reference in New Issue
Block a user