@expo/gulp-supervisor

0.1.3 • Public • Published

gulp-supervisor

NPM version Dependency Status Downloads counter

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.

Package Sidebar

Install

npm i @expo/gulp-supervisor

Weekly Downloads

0

Version

0.1.3

License

none

Unpacked Size

10.5 kB

Total Files

7

Last publish

Collaborators

  • schestakov
  • janicduplessis
  • wkozyra
  • barthec
  • quinlanj
  • sjchmiela
  • tsapeta
  • dsokal
  • esamelson
  • expoadmin
  • ide
  • brentvatne
  • nikki93
  • ccheever
  • terribleben
  • jesseruder
  • fson
  • evanbacon