A grunt-inspired task runner for bash.
Manuel depends on bash
version 4.
Simply clone this repository and put the manuel
script on your path.
For example, clone into ~/opt
and then link the script into ~/bin
:
$ cd ~/opt
$ git clone git://github.com/ShaneKilkelly/manuel
$ ln -s $HOME/opt/manuel/manuel $HOME/bin/manuel
-
Create a
manuelfile
in your project.manuel
provides a handyinit
task for this purpose$ manuel init >> Creating new manuelfile in /your/project/directory
-
Fill the
manuelfile
with 'tasks' (aka bash functions):#! /usr/bin/env bash function build { echo ">> I am building in $1 mode" } function run_tests { build 'test' echo ">> Testing, all passed!" }
-
Run your tasks like so:
$ manuel run_tests >> I am building in test mode >> Testing, all passed!
Manuel supports loading of third-party plugins (again, really just bash functions). See Plugins for more details.
Some really nice plugins are:
- manuel-contrib-watch
- [manuel-contrib-concurrent] (https://github.com/ShaneKilkelly/manuel-contrib-concurrent)
To enable autocompletion for manuel tasks, simply source the autocompletion file
corresponding to you shell. For instance, for bash, add to your ~/.bashrc
:
source manuel.autocomplete.bash
Or for zsh:
source manuel.autocomplete.zsh
Note: Autocompletion requires manuel to be in your path.
Released under the MIT license