From 9e7bd29087bd2bbcc0b467995ee187cfdd0e3d38 Mon Sep 17 00:00:00 2001 From: Roman Zeyde Date: Wed, 21 Nov 2018 09:43:10 +0200 Subject: [PATCH] Add simple pre-commit hook for running 'cargo fmt' Inspired by https://github.com/mimblewimble/grin/pull/110 --- .hooks/install.sh | 4 ++++ .hooks/pre-commit | 21 +++++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100755 .hooks/install.sh create mode 100755 .hooks/pre-commit diff --git a/.hooks/install.sh b/.hooks/install.sh new file mode 100755 index 0000000..fb92209 --- /dev/null +++ b/.hooks/install.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +cd `dirname $0`/../.git/hooks/ +ln -s ../../.hooks/pre-commit diff --git a/.hooks/pre-commit b/.hooks/pre-commit new file mode 100755 index 0000000..bd717f1 --- /dev/null +++ b/.hooks/pre-commit @@ -0,0 +1,21 @@ +#!/bin/bash + +CARGO_FMT="cargo +stable fmt --all" + +$CARGO_FMT --version &>/dev/null +if [ $? != 0 ]; then + printf "[pre_commit] \033[0;31merror\033[0m: \"$CARGO_FMT\" not available?\n" + exit 1 +fi + +$CARGO_FMT -- --check +result=$? + +printf "[pre_commit] $CARGO_FMT → " +if [ $result != 0 ]; then + printf "\033[0;31merror\033[0m \n" +else + printf "\033[0;32mOK\033[0m \n" +fi + +exit $result