about summary refs log tree commit diff
path: root/web/tazblog/blog/Main.hs
diff options
context:
space:
mode:
authorVincent Ambo <tazjin@google.com>2019-12-20T20·18+0000
committerVincent Ambo <tazjin@google.com>2019-12-20T20·18+0000
commit03bfe08e1dd9faf48b06cb146bfa446575cde88a (patch)
tree55317968922a9b2a01516f1b79527874df037517 /web/tazblog/blog/Main.hs
parente52eed3cd4f73779c2e7c350537fb346835ba9f3 (diff)
chore: Significantly restructure folder layout r/237
This moves the various projects from "type-based" folders (such as
"services" or "tools") into more appropriate semantic folders (such as
"nix", "ops" or "web").

Deprecated projects (nixcon-demo & gotest) which only existed for
testing/demonstration purposes have been removed.

(Note: *all* builds are broken with this commit)
Diffstat (limited to 'web/tazblog/blog/Main.hs')
-rw-r--r--web/tazblog/blog/Main.hs24
1 files changed, 24 insertions, 0 deletions
diff --git a/web/tazblog/blog/Main.hs b/web/tazblog/blog/Main.hs
new file mode 100644
index 000000000000..6074f96b7685
--- /dev/null
+++ b/web/tazblog/blog/Main.hs
@@ -0,0 +1,24 @@
+-- | Main module for the blog's web server
+module Main where
+
+import Control.Applicative ((<$>), (<*>))
+import Server (runBlog)
+import System.Environment (getEnv)
+
+data MainOptions
+  = MainOptions
+      { blogPort :: Int,
+        resourceDir :: String
+        }
+
+readOpts :: IO MainOptions
+readOpts =
+  MainOptions
+    <$> (fmap read $ getEnv "PORT")
+    <*> getEnv "RESOURCE_DIR"
+
+main :: IO ()
+main = do
+  opts <- readOpts
+  putStrLn ("tazblog starting on port " ++ (show $ blogPort opts))
+  runBlog (blogPort opts) (resourceDir opts)