grunt-dancer v0.1.1
grunt-dancer
Use grunt to control your Perl Dancer's development server, and live-reload with grunt-contrib-watch!
The "dancer" task
Overview
####dancer:start (the default dancer task) Launches the server and leaves it running even when the parent process is no longer running.
####dancer:stop --or-- dancer:kill Terminates an already running server.
###Options
The dancer task should be configured with the following options:
| Name | Type | Default | Description |
|---|---|---|---|
| pidFile | string | '/tmp/dancerServer.pid' | Path to the pid file. (REQUIRED) |
| debug | boolean | false | Extra logging output (OPTIONAL) |
| args | array | [] | Additional arguments to add to the dancer command, supplied as an array of strings. (OPTIONAL) |
Getting Started
In the shell...
npm install grunt-dancerLoad it by adding this to Gruntfile.js:
grunt.loadNpmTasks('grunt-dancer');Then add dancer to the taskList object passed into grunt.registerTask in Gruntfile.js.
(example:)
grunt.registerTask('default', [
'concat',
'uglify',
'dancer',
'watch'
]);##Running tests To run the test suite, first invoke the following command within the repo, installing the development dependencies:
$ npm installThen run the tests:
$ mocha test/test.js##With grunt-contrib-watch:
You can use this plugin with watch. This is awesome because it enables you to live-reload the dancer server when you make changes to server files (or really, any files that you specify). Here's an example of my watch config:
watch: {
dancer: {
options: {
spawn : false, // IMPORTANT. will not work without this setting.
},
files: [
'/bin/app.pl'
],
tasks: ['dancer']
}
},
//...
grunt.registerTask('default', ['dancer', 'watch']);The dancer task knows if watch is running, and on interrupt will kill the dancer server along with it.