diff options
Diffstat (limited to 'Omni/Ava.hs')
| -rwxr-xr-x | Omni/Ava.hs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/Omni/Ava.hs b/Omni/Ava.hs index 3640fc2..6058425 100755 --- a/Omni/Ava.hs +++ b/Omni/Ava.hs @@ -14,22 +14,29 @@ -- : out ava -- : dep aeson -- : dep http-conduit +-- : dep http-types +-- : dep mustache -- : dep stm -- : dep time -- : dep uuid +-- : dep wai +-- : dep warp module Omni.Ava where import Alpha +import qualified Control.Concurrent as Concurrent import qualified Data.Aeson as Aeson import qualified Data.Text as Text import qualified Data.Text.IO as TextIO import qualified Data.Time as Time import qualified Omni.Agent.AuditLog as AuditLog import qualified Omni.Agent.Telegram as Telegram +import qualified Omni.Ava.Web as Web import qualified Omni.Cli as Cli import qualified Omni.Test as Test import qualified System.Console.Docopt as Docopt import qualified System.Directory as Dir +import qualified System.Environment as Environment import qualified System.IO as IO main :: IO () @@ -70,6 +77,10 @@ move args = do if args `Cli.has` Cli.command "logs" then showLogs args else do + webPort <- Environment.lookupEnv "AVA_WEB_PORT" /> maybe Web.defaultPort (fromMaybe Web.defaultPort <. readMaybe) + dataRoot <- Environment.getEnv "AVA_DATA_ROOT" + let dbPath = dataRoot <> "/ava.db" + _ <- Concurrent.forkIO <| Web.startWebServer webPort dbPath let maybeToken = fmap Text.pack (Cli.getArg args (Cli.longOption "token")) Telegram.startBot maybeToken |
