Rhiz
A deliberately minimal task runner.
This is an in-progress-pre-alpha project.
Rhiz executes tasks defined in a "Rhizfile" which contains task descriptions with a Lisp-like syntax.
(task "hello"
(log "Rhiz says hello"))
;; Comments start with a semicolon
(task "fizzbuzz"
"Tasks can have an optional description" ;; Strings with spaces are double-quoted.
(exec fizzbuzz.exe)
(log "The fizz was buzzed"))
(task "clean"
(delete "./output"))
("task" echo
("echo" "Bare words and quoted strings are equivalent")))
Task execution
Tasks are executed relative to the directory containing the Rhizfile
, not
the directory where rhiz
is invoked. When rhiz
is invoked.
The commands in a task are executed one after the other, and if a command returns a non-zero exit code the the Rhiz immediately exits.