grunt-ngrok

0.2.2 • Public • Published

grunt-ngrok

Build Status Dependency Status devDependency Status

Exposes local port to the web.

NPM

Getting Started

This plugin requires Grunt ~0.4.0

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-ngrok --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-ngrok');

Run this task with the grunt ngrok command.

Options

authToken

Type: String
Default: null

Authtoken on ngrok.com

port

Type: Integer
Default: 8000

Port of local server

proto

Type: String
Default: 'http'

May be 'http', 'https' or 'tcp'.

subdomain

Type: String
Default: target + random nubmer

Subdomain to acquire on ngrok.com

remotePort

Type: Integer
Default: null

Port on ngrok.com

onConnected

Type: function
Default: null

Callback function called when url acquired

inspectAddress

Type: String Default: null Binary default: 127.0.0.1:4040

Address that ngrok binds with to serve its web inspection interface

httpProxy

Type: String Default: null Example: "http://user:password@10.0.0.1:3128"

serverAddress

Type: String
Default: nullBinary default: ngrok.com:4443

Address of ngrokd server

trustHostRootCerts

Type: Bool Default: null Trust ngrok server root CA ot not. See self hosting guide

files

Type: Object Default: equinox.io ngrok official urls Example:

{
  darwinia32: 'http://127.0.0.1/darwinia32.zip',
  linuxarm: 'http://127.0.0.1/linuxarm.zip',
}

Urls for your own ngrok client binaries. Zip should contain ngrok or ngrok.exe.

Example:

grunt.initConfig({
  ngrok: {
    options: {
      authToken: '-your-auth-token'
    },
    server: {
      proto: 'tcp',
      port: 50010,
      remotePort: 50010,
      subdomain: 'mytestapp',
      onConnected: function(url) {
        grunt.log.writeln('Local server exposed to %s!', url);
      }
    },
  },
});

Grunt Events

The ngrok plugin will emit a grunt event, ngrok.{taskName}.connected, once connected. You can listen for this event to run things against a keepalive server, for example:

grunt.registerTask('jasmine-server', 'start web server for jasmine tests in browser', function() {
  grunt.task.run('jasmine:tests:build');
 
  grunt.event.once('ngrok.tests.connected', function(url) {
    var specRunnerUrl = url + '/_SpecRunner.html';
    grunt.log.writeln('Jasmine specs available at: ' + specRunnerUrl);
    require('open')(specRunnerUrl);
  });
 
  grunt.task.run('ngrok:tests');
});

Package Sidebar

Install

npm i grunt-ngrok

Weekly Downloads

2

Version

0.2.2

License

none

Last publish

Collaborators

  • bazilio91