grunt-wait-server v0.3.1
grunt-wait-server
make grunt wait for server start
Getting Started
This plugin requires Grunt ~0.4.2
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-wait-server --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-wait-server');
The "waitServer" task
Overview
In your project's Gruntfile, add a section named waitServer
or wait-server
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
waitServer: {
options: {
req: 'http://localhost:8080',
fail: function () {},
timeout: 10 * 1000,
isforce: false,
interval: 800,
print: true
},
server: {
options: {
req: {
url: 'http://localhost:8080',
method: 'HEAD'
}
}
},
remoteServer: {
options: {
req: 'http://example.com',
print: false
}
},
db: {
options: {
net: {
port: 3306
},
timeout: 0
}
}
}
});
Options
options.req
Type: string
or an options object
Default value: undefined
See request#options for available options.
options.net
Type: options object
Default value: undefined
See net.connect#options for available options.
You must supply either options.req
or options.net
.
options.fail
Type: function
Default value: function () {}
options.timeout
Type: number
Default value: 10 * 1000
0
disables the timeout, will wait forever.
options.isforce
Type: boolean
Default value: false
options.interval
Type: number
Default value: 800
options.print
Type: boolean
Default value: true
When options.isforce
is true,
the task will continue after options.timeout
,
even if the done
signal in options.wait
never came.
Usage Examples
Default Options
In this example, the waitServer
task will wait for the server start with the least options.
grunt.initConfig({
waitServer: {
server: {
options: {
req: 'http://localhost:8080'
}
},
},
});
Custom Options
grunt.initConfig({
waitServer: {
server: {
options: {
req: 'http://localhost:8080',
fail: function () {
console.error('the server had not start');
},
timeout: 20 * 1000,
isforce: true,
interval: 200,
print: false
}
}
},
});
Contributing
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
Release History
(Nothing yet)