https://github.com/leny/gulp-supervisor
Run supervisor as a gulp task for easy integration with the rest of your workflow
https://github.com/leny/gulp-supervisor
Last synced: about 1 year ago
JSON representation
Run supervisor as a gulp task for easy integration with the rest of your workflow
- Host: GitHub
- URL: https://github.com/leny/gulp-supervisor
- Owner: leny
- License: mit
- Created: 2014-02-28T15:32:57.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2019-10-22T18:49:25.000Z (almost 7 years ago)
- Last Synced: 2025-05-31T02:12:00.610Z (about 1 year ago)
- Language: JavaScript
- Size: 10.7 KB
- Stars: 18
- Watchers: 2
- Forks: 6
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE-MIT
Awesome Lists containing this project
README
# gulp-supervisor
   [](http://unmaintained.tech/)
> Run [supervisor](https://github.com/isaacs/node-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](https://github.com/JacksonGariety/gulp-nodemon) by [Jackson Gariety](https://github.com/JacksonGariety).*
## 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 :
```js
{
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](https://github.com/isaacs/node-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`, `"error"` or `"exit"`
Don't automatically restart the supervised program if it ends.
Supervisor will wait for a change in the source files.
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
## Example
```js
// 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.