Make gFromEnv return Either String (...)

This commit is contained in:
Paul Brinkmeier
2025-09-17 19:57:25 +02:00
parent cf57a24497
commit 78d317c7bd
2 changed files with 19 additions and 12 deletions
+9 -3
View File
@@ -37,6 +37,7 @@ import Servant
, (:>)
, pattern MkHandler
)
import System.Exit (exitFailure)
import System.FilePath ((</>))
import Text.Blaze.Html.Renderer.Utf8 (renderHtml)
import Text.Blaze.Html5 ((!))
@@ -80,8 +81,13 @@ deriving instance Show Config
main :: IO ()
main = do
cfg <- Envy.load @ConfigT
-- _ <- exitSuccess
cfg <-
Envy.load @ConfigT >>= \case
Left err -> do
Log.error $ printf "failed to read config: %s" err
exitFailure
Right c ->
pure c
let
settings =
@@ -95,7 +101,7 @@ main = do
]
db <- DB.initDB cfg.yoreDb
Warp.runSettings settings $ serve (Proxy :: Proxy API) $ hoistServer (Proxy :: Proxy API) nt $ server cfg db
Warp.runSettings settings $ serve (Proxy @API) $ hoistServer (Proxy @API) nt $ server cfg db
where
logger req status _ = do
Log.info $