added TLS
This commit is contained in:
parent
c9eae072b9
commit
bb8b26dedb
2 changed files with 12 additions and 2 deletions
|
|
@ -58,7 +58,8 @@ executable server
|
|||
wai,
|
||||
wai-app-static,
|
||||
wai-extra,
|
||||
warp
|
||||
warp,
|
||||
warp-tls
|
||||
default-language:
|
||||
Haskell2010
|
||||
other-modules:
|
||||
|
|
|
|||
|
|
@ -16,6 +16,8 @@ import qualified Database as DB
|
|||
import qualified Error as Er
|
||||
import qualified InstantRunoff as IR
|
||||
import qualified Network.Wai.Handler.Warp as W
|
||||
import qualified System.Environment as S
|
||||
import qualified Network.Wai.Handler.WarpTLS as WTLS
|
||||
import qualified Poll as P
|
||||
import Servant
|
||||
import Network.Wai.Application.Static (defaultWebAppSettings, StaticSettings (ss404Handler))
|
||||
|
|
@ -81,7 +83,14 @@ getEnv = Env <$> DB.openLocalDB
|
|||
runWithEnv :: Env -> AppM a -> Handler a
|
||||
runWithEnv = flip Rd.runReaderT
|
||||
|
||||
tlsSettings = WTLS.tlsSettings "/etc/letsencrypt/live/rankedchoice.net/cert.pem" "/etc/letsencrypt/live/rankedchoice.net/privkey.pem"
|
||||
warpSettings = W.setPort 443 W.defaultSettings
|
||||
|
||||
main :: IO ()
|
||||
main = do
|
||||
env <- getEnv
|
||||
W.run 8080 . serve api . hoistServer api (runWithEnv env) $ server
|
||||
opts <- S.getArgs
|
||||
let application = serve api . hoistServer api (runWithEnv env) $ server
|
||||
case opts of
|
||||
["--with-ssl"] -> WTLS.runTLS tlsSettings warpSettings application
|
||||
_ -> W.run 8080 application
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue