Simple task runner
Installation ##
npm install runner
Usage ##
Runner can be started by usingnpm
or npx
commands.Run with npm:
npm run build
where
build
is an npm script in the package.json
which contains a runner
command.Run with npx:
npx runner
The
runner
command format:runner [options] [<task>]
Available options:
Option | Description --------------|------------- -c, --config | Configuration file is a script which contains tasks definitions. Default value - runner.js. -s, --serial | Run all given tasks sequentially (instead of in parallel).
These two commands are identical:
npx runner
npx runner --config runner.js
To run a
webpack:build
task from a custom configuration file:npx runner -c tasks/develop.js webpack:build
Without the task name starts the default task:
npx runner -c tasks/develop.js
API ##
Add to the scope:import runner from 'runner';
Create a simple task:
runner.task('make', function () {
// some actions
});
More examples of tasks creation and execution are available in the cjs-runner package.
Add an alias to an existing task:
runner.alias('build', 'make');
Run task on a key or keys combination press:
runner.keystroke('build', 'ctrl+b');
Files watching
To execute a specific task on some file changes:runner.watch('src/script/**/*.js', 'webpack:build');
To execute a named or anonymous function:
runner.watch('src/script/**/*.js', function rebuild ( done ) {
// function name "rebuild" is used as task name
// otherwise <noname> is printed
done();
});
To execute task series:
runner.watch('src/script/**/*.js', runner.serial('lint', 'build'));
Before calling
runner.watch
it's possible to configure the watch:runner.watch.config = {
// some configuration
};
All available configurations you can see in the underlying chokidar package.
Contribution ##
If you have any problems or suggestions please open an issue according to the contribution rules.License ##
runner
is released under the GPL-3.0 License.