Skip to content
Simple yet powerful webhooks catcher
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
src
tests
tools
.gitignore
.travis.yml
CHANGELOG.md
Cargo.lock
Cargo.toml
LICENSE
README.md
config-example.toml
netlify.toml
rustfmt.toml

README.md

Fisher

Build Status

Fisher is a fast, simple webhooks catcher written in Rust. It's easy to set up, it features builtin security, and you can monitor its status with a simple HTTP request. Being a single binary, you can deploy it easily wherever you want.

Fisher is released under the GNU GPL v3+ license, see LICENSE for more details. In order to build it, you need to have Rust 1.31.1 or greater installed.

Usage

Fist of all, you need to download Fisher and place the executable on your server (possibly in a directory in $PATH).

Fisher doesn't have a configuration file, and you only need to place your hooks in a directory (make sure they're executable!):

$ mkdir /srv/hooks
$ cat > /srv/hooks/example-hook.sh << EOF
#!/bin/bash

echo "I'm an hook!"
EOF
$ chmod +x /srv/hooks/example-hook.sh

Then, you start fisher and you're good to go!

$ fisher /srv/hooks
Total hooks collected: 1
Web API listening on 127.0.0.1:8000

You can now call your hook: the request will be queued by Fisher and the script will be executed.

$ curl http://127.0.0.1:8000/hook/example-hook

Building Fisher

In order to build fisher, you need a stable Rust compiler and cargo installed.

$ git clone https://github.com/pietroalbini/fisher
$ cd fisher
$ cargo build --release

The compiled binary will be available in target/release/fisher.

You can’t perform that action at this time.