grunt-wait-server

    0.3.1 • Public • Published

    grunt-wait-server

    make grunt wait for server start

    NPM version Built with Grunt

    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)

    Bitdeli Badge

    Keywords

    Install

    npm i grunt-wait-server

    DownloadsWeekly Downloads

    66

    Version

    0.3.1

    License

    none

    Unpacked Size

    9.84 kB

    Total Files

    6

    Last publish

    Collaborators

    • yelo