I got HookHand working locally, it’s pretty interesting, I feel like the way it exposes webhook data as environment variables might be fairly tricky to work with:
- First:
cat ~/scratch/HookHand/scripts/test
#!/bin/sh
echo "TEST!"
echo "parameters: $*"
echo "HOOKHAND* environment variables:"
env | grep '^HOOKHAND' || true
- Next:
SCRIPTS_DIR=~/scratch/HookHand/scripts bundle exec unicorn --port 5000
- Then:
curl -H "Content-Type: application/json" \
-X POST -d '{"foo":"bar","baz":"bar","results":[1,2,3]}' \
http://localhost:5000/test/1/2/
- Yields:
Running script 'test' with parameters ["1", "2"]:
---
TEST!
parameters: 1 2
HOOKHAND* environment variables:
HOOKHAND_FOO=bar
HOOKHAND=1
HOOKHAND_BAZ=bar
HOOKHAND_RESULTS_1=
HOOKHAND_RESULTS_2=
HOOKHAND_RESULTS_3=
---
Ran script 'test' successfully :D