docs icon indicating copy to clipboard operation
docs copied to clipboard

Use Tunnelmole instead of ngrok to use a FOSS tunnelling solution in your docs

Open robbie-cahill opened this issue 2 years ago • 3 comments
trafficstars

Code of Conduct

What article on docs.github.com is affected?

  • https://docs.github.com/en/webhooks-and-events/webhooks/creating-webhooks
  • https://docs.github.com/en/apps/creating-github-apps/registering-a-github-app/using-webhooks-with-github-apps
  • https://docs.github.com/en/apps/creating-github-apps/writing-code-for-a-github-app/setting-up-your-development-environment-to-create-a-github-app (here it could be an addition, there are a few other options mentioned)
  • https://docs.github.com/en/rest/guides/building-a-ci-server
  • https://docs.github.com/en/rest/guides/delivering-deployments
  • https://docs.github.com/en/webhooks-and-events/webhooks/configuring-your-server-to-receive-payloads

What part(s) of the article would you like to see updated?

There are a bunch of places that use ngork in your docs. However, ngrok has a few issues

  • Its closed source and proprietary
  • You can't self host ngrok and their paid plans are overpriced

So, i'd like to update your docs to use tunnelmole instead. It has the following advantages

  • Its open source/FOSS and under a permissive MIT license
  • You can get it from GitHub
  • You can self host it if you want full control, or use the hosted service
  • Its possible to run it from JavaScript code for more advanced use cases and automations.

Here's the difference in terms of usage

ngrok

ngrok http 3000

tunnelmole

tunnelmole 3000

or, from JavaScript/TypeScript code with the npm dependency

tunnelmole({
    port: 3000
});

Optionally a domain option can be passed to use the hosted service if you have an api key, or if you are self hosting your own service.

Let me know if you'd like me to raise a PR with the changes.

Additional information

Previously it was proposed to just update the webhooks doc in #26003.

I would use this PR as a base for the changes: https://github.com/github/docs/pull/26004, then update the other docs in the same branch.

robbie-cahill avatar Jun 17 '23 04:06 robbie-cahill

@robbie-cahill Thanks for taking the time to open this! We appreciate the clearly defined desired outcome and reasoning behind it ✨

As mentioned in https://github.com/github/docs/issues/26003#issuecomment-1595479102, ngrok is used throughout several places in our docs and will require review and consideration from several teams. The coordination and review could be a pretty long process, if it's even accepted. Because of the team review requirements, I'm going to transfer this to an internal board.

However, I'm going to wait to make this transfer until next week so you have a chance to see/respond to this comment. 💛

Thanks again for the issue and for your interest in improving the docs! 💖

cmwilson21 avatar Jun 23 '23 18:06 cmwilson21

Sounds good. If you're transferring this to an internal board, just send me an email once the review is done then I'll raise a PR if we're going ahead.

My email is on my GitHub profile.

robbie-cahill avatar Jun 24 '23 11:06 robbie-cahill

@robbie-cahill I'll make note of that in the internal discussion. Thanks for your willingness to submit a PR!

cmwilson21 avatar Jun 26 '23 14:06 cmwilson21

Thank you for opening this issue! Updates to the REST API, GraphQL API, and webhook reference documentation must be made internally. I have copied your issue to an internal issue, so I will close this issue.

docs-bot avatar Jul 06 '23 03:07 docs-bot