diff options
Diffstat (limited to 'examples/pre-commit')
-rw-r--r-- | examples/pre-commit | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/examples/pre-commit b/examples/pre-commit index 1b5d5c6..5bed048 100644 --- a/examples/pre-commit +++ b/examples/pre-commit @@ -3,19 +3,25 @@ # An example hook script to store metadata information using # metastore on each commit. -if ! metastore -s; then - echo "Failed to execute metastore -s" >&2 - exit 1 -fi +MSFILE=".metadata" -if [ ! -e ".metadata" ]; then - echo ".metadata missing" >&2 - exit 1 -fi +exit_on_fail() { + "$@" + if [ $? -ne 0 ]; then + echo "Failed to execute: $@" >&2 + exit 1 + fi +} + +exit_on_fail \ + metastore -s -f "$MSFILE" -if ! git-add .metadata; then - echo "Failed to execute git-add .metadata" >&2 +if [ ! -e "$MSFILE" ]; then + echo "\"$MSFILE\" missing" >&2 exit 1 fi +exit_on_fail \ + git-add "$MSFILE" + exit 0 |