2017-10-25 22:08:23 +02:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
if [ $# -eq 0 ]
|
|
|
|
then
|
|
|
|
echo "Usage: $0 YOUR-MNT"
|
|
|
|
exit
|
|
|
|
fi
|
|
|
|
|
2017-11-10 22:57:21 +01:00
|
|
|
if [[ "$1" = "--all" ]]
|
|
|
|
then
|
|
|
|
MNT=""
|
|
|
|
else
|
|
|
|
MNT="-m $1"
|
|
|
|
fi
|
|
|
|
|
2017-10-25 22:45:11 +02:00
|
|
|
BASE="$(realpath "$0")"
|
|
|
|
BASE="$(dirname "$BASE")"
|
|
|
|
cd "$BASE" || exit 1
|
2017-10-25 22:08:23 +02:00
|
|
|
|
2017-11-10 22:57:21 +01:00
|
|
|
utils/schema-check/dn42-schema.py -v scan data/ $MNT || ( echo "Schema validation failed, please check above!" ; exit 1 )
|
2017-10-25 23:23:34 +02:00
|
|
|
|
2017-11-07 17:50:46 +01:00
|
|
|
exit 0
|
|
|
|
|
2017-11-06 22:26:18 +01:00
|
|
|
git diff --cached --name-only | while IFS='/' read -ra LINE; do
|
|
|
|
if [[ "${LINE[0]}" = "data" ]]; then
|
2017-11-10 22:57:21 +01:00
|
|
|
if ! utils/schema-check/dn42-schema.py policy ${LINE[1]} ${LINE[2]} $MNT; then
|
2017-11-06 22:36:28 +01:00
|
|
|
echo "# This file fails policy checks. To continue with the commit revert the change."
|
|
|
|
echo "# git reset HEAD -- " ${LINE[1]}/${LINE[1]}/${LINE[2]}
|
|
|
|
echo "# git checkout -- " ${LINE[1]}/${LINE[1]}/${LINE[2]}
|
|
|
|
exit 1
|
|
|
|
fi
|
2017-11-06 22:26:18 +01:00
|
|
|
fi
|
|
|
|
done
|