Receive list of used resources in Run module
This commit is contained in:
parent
5a591ee24c
commit
3346123ca6
2 changed files with 17 additions and 4 deletions
|
@ -32,9 +32,9 @@ import Hakyll.Core.Writable
|
|||
import Hakyll.Core.Store
|
||||
import Hakyll.Core.Configuration
|
||||
|
||||
-- | Run all rules needed
|
||||
-- | Run all rules needed, return the rule set used
|
||||
--
|
||||
run :: HakyllConfiguration -> Rules -> IO ()
|
||||
run :: HakyllConfiguration -> Rules -> IO RuleSet
|
||||
run configuration rules = do
|
||||
store <- makeStore $ storeDirectory configuration
|
||||
provider <- fileResourceProvider
|
||||
|
@ -46,6 +46,7 @@ run configuration rules = do
|
|||
state' = runReaderT reader $ env ruleSet provider store
|
||||
|
||||
evalStateT state' state
|
||||
return ruleSet
|
||||
where
|
||||
env ruleSet provider store = RuntimeEnvironment
|
||||
{ hakyllConfiguration = configuration
|
||||
|
|
|
@ -6,13 +6,15 @@ module Hakyll.Main
|
|||
) where
|
||||
|
||||
import Control.Concurrent (forkIO)
|
||||
import Control.Monad (when)
|
||||
import Control.Monad (when, forM_)
|
||||
import System.Environment (getProgName, getArgs)
|
||||
import System.Directory (doesDirectoryExist, removeDirectoryRecursive)
|
||||
import qualified Data.Set as S
|
||||
|
||||
import Hakyll.Core.Configuration
|
||||
import Hakyll.Core.Run
|
||||
import Hakyll.Core.Rules
|
||||
import Hakyll.Core.Rules.Internal
|
||||
import Hakyll.Web.Preview.INotify
|
||||
import Hakyll.Web.Preview.Server
|
||||
|
||||
|
@ -41,7 +43,9 @@ hakyllWith configuration rules = do
|
|||
-- | Build the site
|
||||
--
|
||||
build :: HakyllConfiguration -> Rules -> IO ()
|
||||
build = run
|
||||
build configuration rules = do
|
||||
_ <- run configuration rules
|
||||
return ()
|
||||
|
||||
-- | Remove the output directories
|
||||
--
|
||||
|
@ -80,11 +84,19 @@ help = do
|
|||
--
|
||||
preview :: HakyllConfiguration -> Rules -> Int -> IO ()
|
||||
preview configuration rules port = do
|
||||
-- Build once, keep the rule set
|
||||
ruleSet <- run configuration rules
|
||||
|
||||
-- Debug: show the resources used
|
||||
forM_ (S.toList $ rulesResources ruleSet) $ putStrLn . show
|
||||
|
||||
{-
|
||||
-- Fork a thread polling for changes
|
||||
_ <- forkIO $ previewPoll configuration "." $ build configuration rules
|
||||
|
||||
-- Run the server in the main thread
|
||||
server configuration port
|
||||
-}
|
||||
|
||||
-- | Rebuild the site
|
||||
--
|
||||
|
|
Loading…
Reference in a new issue