heat-coe-templates/tools/pre-commit-hook
Lars Kellogg-Stedman 2017ef5a76 added support scripts
Change-Id: I875972813927dd4ace2c7f710b73085ba16ba45c
2015-03-13 00:33:50 -04:00

29 lines
582 B
Bash
Executable File

#!/bin/sh
TOPLEVEL=$(git rev-parse --show-toplevel)
RES=0
cd $TOPLEVEL
if [ "$1" = "--install" ]; then
ln -sf ../../tools/pre-commit-hook .git/hooks/pre-commit
exit
fi
tmpdir=$(mktemp -d precommit.XXXXXX) || exit 1
trap "rm -rf $TOPLEVEL/$tmpdir" 0
git diff --cached --name-only --diff-filter=ACMR |
xargs git checkout-index --prefix=$tmpdir/ --
cd $tmpdir
echo "=== yaml checks ==="
(
find . -name '*.yaml' -print0
[ -d fragments ] &&
find fragments -type f | xargs grep -l '^#cloud-config'
) | xargs -0 python ${TOPLEVEL}/tools/validate-yaml.py -v || exit 1