Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Avoid fetching ngrok bins from equinox - host them as npm modules #98

Open
bubenshchykov opened this issue Nov 22, 2017 · 7 comments
Open

Comments

@bubenshchykov
Copy link
Owner

bubenshchykov commented Nov 22, 2017

  • host bins as separate platform-dependent npm modules (package.json os restriction)
  • specify them as optionalDependencies in main ngrok module
  • in postinstall make sure that one and only one sub-module is installed according to os

great example: https://github.com/expo/ngrok/tree/master/packages

@wll8
Copy link

wll8 commented Aug 11, 2021

Equinox has issued a service shutdown announcement: https://equinox.io/blog/shutting-down

However, the automatic installation address of npm and the current official download address are still downloaded from equinox.io.

And the following information makes everyone very worried about whether it is possible to update the version from a stable cdn, because there is no way to continue using it without updating.

> ngrok http 80
Your ngrok agent version "2.3.40" is no longer supported. Only the most recent version of the ngrok agent is supported without an account.
Update to a newer version with `ngrok update` or by downloading from https://ngrok.com/download.
Sign up for an account to avoid forced version upgrades: https://ngrok.com/signup.
ERR_NGROK_120
details

image

image

@philnash
Copy link
Collaborator

That is a concern, thanks for bringing it up @wll8. The main ngrok executable is not controlled by this project though, so I will try to contact them to find out what the plan for binary distribution is given this update.

@wll8
Copy link

wll8 commented Aug 11, 2021

@philnash

I used this repository in this project. In fact, like most people, I am very concerned about these two issues:

  • Relatively stable cdn, such as npmjs.com (many cdn platforms have copied it)
  • Download only the binary files of the current system

Currently I try to run ngrok update first, and then run ngrok http, I hope ngrok http will not cause problems, this is the only solution currently.

@philnash
Copy link
Collaborator

Hi @wll8, I understand the concern too, but I am not responsible for ngrok itself.

I have emailed the ngrok team to find out what they plan to do so that this project can be updated too. Hopefully they will get back to me soon so we can all update and keep everything running.

wll8 added a commit to wll8/mockm that referenced this issue Aug 12, 2021
避免出现以下错误:

``` sh
> ngrok http 80
Your ngrok agent version "2.3.40" is no longer supported. Only the most recent version of the ngrok agent is supported without an account.
Update to a newer version with `ngrok update` or by downloading from https://ngrok.com/download.
Sign up for an account to avoid forced version upgrades: https://ngrok.com/signup.
ERR_NGROK_120

```

参考:
- bubenshchykov/ngrok#98
@philnash
Copy link
Collaborator

Good news, I have been in touch with the ngrok team and while I don't know all the details, it seems that they will continue to publish to equinox after the shutdown date. Perhaps we will hear more details from ngrok, but the important thing is that nothing has to change in this project.

@bubenshchykov
Copy link
Owner Author

@wll8 thanks for reporting, and @philnash thanks for taking care of it. You guys are the best! 🍻

wll8 added a commit to wll8/mockm that referenced this issue Nov 18, 2022
避免出现以下错误:

``` sh
> ngrok http 80
Your ngrok agent version "2.3.40" is no longer supported. Only the most recent version of the ngrok agent is supported without an account.
Update to a newer version with `ngrok update` or by downloading from https://ngrok.com/download.
Sign up for an account to avoid forced version upgrades: https://ngrok.com/signup.
ERR_NGROK_120

```

参考:
- bubenshchykov/ngrok#98
@akshayuppal3
Copy link

how to install ngrok as npm is not working

ngrok - install failed, retrying
ngrok - downloading binary https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-stable-darwin-arm64.zip
ngrok - downloading progress:
ngrok - error downloading from URL RequestError: Hostname/IP does not match certificate's altnames: Host: bin.equinox.io. is not in the cert's altnames: DNS:c.sni-561-default.ssl.fastly.net
    at ClientRequest.<anonymous> (/Users/aksuppal/node_modules/got/dist/source/core/index.js:970:111)
    at Object.onceWrapper (events.js:520:26)
    at ClientRequest.emit (events.js:412:35)
    at ClientRequest.origin.emit (/Users/aksuppal/node_modules/@szmarczak/http-timer/dist/source/index.js:43:20)
    at TLSSocket.socketErrorListener (_http_client.js:475:9)
    at TLSSocket.emit (events.js:400:28)
    at emitErrorNT (internal/streams/destroy.js:106:8)
    at emitErrorCloseNT (internal/streams/destroy.js:74:3)
    at processTicksAndRejections (internal/process/task_queues.js:82:21)
    at new NodeError (internal/errors.js:322:7)
    at Object.checkServerIdentity (tls.js:347:12)
    at TLSSocket.onConnectSecure (_tls_wrap.js:1525:27)
    at TLSSocket.emit (events.js:400:28)
    at TLSSocket._finishInit (_tls_wrap.js:937:8)
    at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:709:12) {
  code: 'ERR_TLS_CERT_ALTNAME_INVALID',
  timings: {
    start: 1693509639041,
    socket: 1693509639041,
    lookup: 1693509644048,
    connect: 1693509644065,
    secureConnect: undefined,
    upload: undefined,
    response: undefined,
    end: undefined,
    error: 1693509644095,
    abort: undefined,
    phases: {
      wait: 0,
      dns: 5007,
      tcp: 17,
      tls: undefined,
      request: undefined,
      firstByte: undefined,
      download: undefined,
      total: 5054
    }
  }
}
ngrok - install failed RequestError: Hostname/IP does not match certificate's altnames: Host: bin.equinox.io. is not in the cert's altnames: DNS:c.sni-561-default.ssl.fastly.net
    at ClientRequest.<anonymous> (/Users/aksuppal/node_modules/got/dist/source/core/index.js:970:111)
    at Object.onceWrapper (events.js:520:26)
    at ClientRequest.emit (events.js:412:35)
    at ClientRequest.origin.emit (/Users/aksuppal/node_modules/@szmarczak/http-timer/dist/source/index.js:43:20)
    at TLSSocket.socketErrorListener (_http_client.js:475:9)
    at TLSSocket.emit (events.js:400:28)
    at emitErrorNT (internal/streams/destroy.js:106:8)
    at emitErrorCloseNT (internal/streams/destroy.js:74:3)
    at processTicksAndRejections (internal/process/task_queues.js:82:21)
    at new NodeError (internal/errors.js:322:7)
    at Object.checkServerIdentity (tls.js:347:12)
    at TLSSocket.onConnectSecure (_tls_wrap.js:1525:27)
    at TLSSocket.emit (events.js:400:28)
    at TLSSocket._finishInit (_tls_wrap.js:937:8)
    at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:709:12) {
  code: 'ERR_TLS_CERT_ALTNAME_INVALID',
  timings: {
    start: 1693509639041,
    socket: 1693509639041,
    lookup: 1693509644048,
    connect: 1693509644065,
    secureConnect: undefined,
    upload: undefined,
    response: undefined,
    end: undefined,
    error: 1693509644095,
    abort: undefined,
    phases: {
      wait: 0,
      dns: 5007,
      tcp: 17,
      tls: undefined,
      request: undefined,
      firstByte: undefined,
      download: undefined,
      total: 5054
    }
  }
}
npm WARN enoent ENOENT: no such file or directory, open '/Users/aksuppal/package.json'
npm WARN aksuppal No description
npm WARN aksuppal No repository field.
npm WARN aksuppal No README data
npm WARN aksuppal No license field.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ngrok@5.0.0-beta.2 postinstall: `node ./postinstall.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ngrok@5.0.0-beta.2 postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/aksuppal/.npm/_logs/2023-08-31T19_20_44_251Z-debug.log

keyzf pushed a commit to keyzf/mockm that referenced this issue Mar 8, 2024
避免出现以下错误:

``` sh
> ngrok http 80
Your ngrok agent version "2.3.40" is no longer supported. Only the most recent version of the ngrok agent is supported without an account.
Update to a newer version with `ngrok update` or by downloading from https://ngrok.com/download.
Sign up for an account to avoid forced version upgrades: https://ngrok.com/signup.
ERR_NGROK_120

```

参考:
- bubenshchykov/ngrok#98
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants