@@ -8,8 +8,9 @@ module Hakyll.Main
8import Control.Applicative ((<$>))
8import Control.Applicative ((<$>))
9import Control.Concurrent (forkIO)
9import Control.Concurrent (forkIO)
10import Control.Monad (when)
10import Control.Monad (when)
11−import System.Environment (getProgName, getArgs)
12import System.Directory (doesDirectoryExist, removeDirectoryRecursive)
11import System.Directory (doesDirectoryExist, removeDirectoryRecursive)
12+import System.Environment (getProgName, getArgs)
13+import System.Process (system)
13import qualified Data.Set as S
14import qualified Data.Set as S
15import Hakyll.Core.Configuration
16import Hakyll.Core.Configuration
@@ -40,6 +41,7 @@ hakyllWith conf rules = do
40 ["rebuild"] -> rebuild conf rules
41 ["rebuild"] -> rebuild conf rules
41 ["server"] -> server conf 8000
42 ["server"] -> server conf 8000
42 ["server", p] -> server conf (read p)
43 ["server", p] -> server conf (read p)
44+ ["deploy"] -> deploy conf
45-- | Build the site
47-- | Build the site
@@ -80,6 +82,7 @@ help = do
80 , name ++ " preview [port] Run a server and autocompile"
82 , name ++ " preview [port] Run a server and autocompile"
81 , name ++ " rebuild Clean up and build again"
83 , name ++ " rebuild Clean up and build again"
82 , name ++ " server [port] Run a local test server"
84 , name ++ " server [port] Run a local test server"
85+ , name ++ " deploy Upload/deploy your site"
85-- | Preview the site
88-- | Preview the site
@@ -109,3 +112,10 @@ server conf port = do
109 staticServer destination preServeHook port
112 staticServer destination preServeHook port
111 preServeHook _ = return ()
114 preServeHook _ = return ()
118+deploy :: HakyllConfiguration -> IO ()
120+ _ <- system $ deployCommand conf