GithubHelp home page GithubHelp logo

coreh / hookshot Goto Github PK

View Code? Open in Web Editor NEW
145.0 145.0 24.0 210 KB

Hookshot is a tiny library and companion CLI tool for handling GitHub post-receive hooks.

License: MIT License

JavaScript 100.00%

hookshot's People

Contributors

coreh avatar tootallnate avatar valscion avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

hookshot's Issues

Deprecation warning for newer Express versions

GMT express deprecated res.send(status, body): 

Use res.status(status).send(body) instead at node_modules/hookshot/lib/index.js:33:9

Seems like an easy enough fix. I feel like your testing setup for webhooks is probably more ready-to-go than mine, but if you'd prefer a PR I can probably do one at some point.

Support webhook shared secrets

GitHub lets you put a shared secret into a webhook, that the server can use to verify that it's really GitHub making the request.

hookshot should support this. I'll plan to do a PR, but putting this flag in the sand in case someone wants to beat me to it.

Doesn't work on Windows

Since you're assuming that process.env.SHELL is set, which may or may not be the case on Windows.

But if/when it is available on Windows, then it's usually a unix-style path such as /bin/bash. This path isn't gonna work on Windows' cp.spawn() and will result in a error spawn ENOENT error.

Some possible (combinations of) solutions:

  1. Just use cmd.exe on Windows.
  2. Detect when we are running from within a "cygwin" environment and conver the "SHELL" env variable to a cygwin path. This should be relatively easy.
  3. This would only really leave detecting git-bash and its path resolution, but that's not really important for us ATM.

I'll probably try to whip up a patch for 1+2.

Substantially raise the request entity size

I got a Error: request entity too large error on a push with a few hundred files. GitHub payloads can be large when you're doing large merges and PRs. I think Hookshot's maximum should be larger than the defaults. Ideally, it'd be easy to pass a flag into hookshot to raise the maximum beyond Hookshot's defaults, too.

Listen to all branches

How would you set up hookshot so it listens to changes on all of your branches instead of just refs/heads/master?

Bypass NAT

Any idea on how to improve this tool bypassing routing and NAT restriction?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.