{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE OverloadedStrings #-} import BasePrelude import Control.Monad.IO.Class ( MonadIO(liftIO) ) import Control.Monad.Logger ( runStdoutLoggingT ) import Network.Wai.Application.Static ( staticApp, defaultWebAppSettings ) import Network.Wai.Handler.Warp ( run ) import Network.Wai.Middleware.Consul ( withConsul ) import Network.Wai.Middleware.Consul.GitHub ( gitHubPullOnWebhook ) import Network.Wai.Middleware.RequestLogger ( logStdoutDev ) main :: IO () main = runStdoutLoggingT (void (withConsul gitHubPullOnWebhook (\middleware -> liftIO (run 8080 (logStdoutDev $ middleware $ staticApp $ defaultWebAppSettings ".")))))