@expo/gulp-supervisor
v0.1.3
Published
Run supervisor as a gulp task for easy integration with the rest of your workflow.
Downloads
3
Maintainers
Readme
gulp-supervisor
Run supervisor as a gulp task for easy configuration and integration with the rest of your workflow.
This Gulp task is freely inspired from the gulp-nodemon by Jackson Gariety.
Usage
supervisor( script[, options] )
You need to pass to supervisor the path of the script to monitor, and can pass an object with supervisor options, like this :
{
args: [ "dev" ],
watch: [ "bin" ],
ignore: [ "test" ],
pollInterval: 500,
extensions: [ "js,jade" ],
exec: "node",
debug: true,
debugBrk: true,
harmony: true
noRestartOn: "exit",
forceWatch: true,
quiet: true
}
Options
The following options corresponds to the available options from supervisor. If you don't pass these options to the grunt tasks, the default values of supervisor will be used.
args
Type: Array
of Strings
List of arguments to be passed to your script.
watch
Type: Array
of Strings
List of folders or js files to watch for changes.
ignore
Type: Array
of Strings
List of folders to ignore for changes.
pollInterval
Type: Number
of milliseconds
How often to poll watched files for changes.
extensions
Type: Array
of Strings
List of file extensions to watch for changes.
exec
Type: String
The executable that runs the specified script.
debug
Type: Boolean
Starts node with --debug
flag.
debugBrk
Type: Boolean
Starts node with --debug-brk
flag.
harmony
Type: Boolean
Starts node with --harmony
flag.
noRestartOn
Type: String
, "success"
, "error"
or "exit"
Don't automatically restart the supervised program if it ends.
Supervisor will wait for a change in the source files.
If "success", an exit code other than 0 will still restart.
If "error", an exit code of 0 will still restart.
If "exit", no restart regardless of exit code.
forceWatch
Type: Boolean
Use fs.watch instead of fs.watchFile.
This may be useful if you see a high cpu load on a windows machine.
quiet
Type: Boolean
Suppress DEBUG messages
exitGracefully
Type: Boolean
Supervisor will not stop when SIGINT received (ex. Ctrl-C was used).
Instead, SIGINT will be passed to child process.
If used with "noRestartOn: success" supervisor will exit after child terminates with code 0.
Example
// Gulpfile.js
var gulp = require( "gulp" ),
supervisor = require( "gulp-supervisor" );
gulp.task( "supervisor-simple", function() {
supervisor( "test/fixture/server.js" );
} );
gulp.task( "supervisor-all", function() {
supervisor( "test/fixture/server.js", {
args: [],
watch: [ "test" ],
ignore: [ "tasks" ],
pollInterval: 500,
extensions: [ "js" ],
exec: "node",
debug: true,
debugBrk: false,
harmony: true,
noRestartOn: false,
forceWatch: true,
quiet: false
} );
} );
Release History
- 0.1.0: Initial release (28/02/14)
TODO
Write tests :)
License
Copyright (c) 2014 Leny Licensed under the MIT license.