summaryrefslogtreecommitdiff
path: root/Biz/Bild.hs
diff options
context:
space:
mode:
authorBen Sima <ben@bsima.me>2021-01-15 19:12:19 -0500
committerBen Sima <ben@bsima.me>2021-01-15 20:03:07 -0500
commit7bb2775667386659402ebb7559c7bc4af46ec268 (patch)
tree0e41af56809c1c7aec5a399f32cd3dadd7129ef3 /Biz/Bild.hs
parent25c02fbf517888238097cf82879eef3cd3828626 (diff)
Implement Biz.Cli
Wraps docopt rather nicely. It's much nicer than optparse-applicative and runs tests with the --test argument automatically. Next I just need to implement a test framework.
Diffstat (limited to 'Biz/Bild.hs')
-rw-r--r--Biz/Bild.hs7
1 files changed, 5 insertions, 2 deletions
diff --git a/Biz/Bild.hs b/Biz/Bild.hs
index 96f63ad..60ad97a 100644
--- a/Biz/Bild.hs
+++ b/Biz/Bild.hs
@@ -116,6 +116,7 @@
module Biz.Bild where
import Alpha hiding (sym, (<.>))
+import qualified Biz.Cli as Cli
import Biz.Namespace (Namespace (..))
import qualified Biz.Namespace as Namespace
import qualified Data.Char as Char
@@ -125,15 +126,17 @@ import qualified Data.Text as Text
import qualified System.Console.Docopt as Docopt
import qualified System.Directory as Dir
import qualified System.Environment as Env
+import qualified System.Exit as Exit
import System.FilePath ((</>))
import qualified System.Process as Process
import qualified Text.Regex.Applicative as Regex
import qualified Prelude
main :: IO ()
-main = Env.getArgs >>= Docopt.parseArgsOrExit help >>= run
+main = Cli.main <| Cli.Plan help move test
where
- run args =
+ test _ = Exit.exitSuccess
+ move args =
mapM getNamespace (Docopt.getAllArgs args (Docopt.argument "target"))
/> catMaybes
/> filter isBuildableNs