Merge pull request #32 from Th4nat0s/donokilljson

modify validators to check json an format, stop on any error
This commit is contained in:
Alexandre Dulaunoy 2017-02-26 14:20:18 +01:00 committed by GitHub
commit 8e1cd6364e
2 changed files with 41 additions and 8 deletions

View file

@ -1,17 +1,28 @@
#!/bin/bash #!/bin/bash
# Seeds sponge, from moreutils
#Validate all Jsons first
for dir in `find . -name "*.json"`
do
echo validating ${dir}
cat ${dir} | jq . >/dev/null
rc=$?
if [[ $rc != 0 ]]; then exit $rc; fi
done
set -e set -e
set -x set -x
# Seeds sponge, from moreutils
for dir in clusters/*.json for dir in clusters/*.json
do do
# Beautify it
cat ${dir} | jq . | sponge ${dir} cat ${dir} | jq . | sponge ${dir}
done done
for dir in galaxies/*.json for dir in galaxies/*.json
do do
# Beautify it
cat ${dir} | jq . | sponge ${dir} cat ${dir} | jq . | sponge ${dir}
done done

View file

@ -1,21 +1,39 @@
#!/bin/bash #!/bin/bash
# This file launch all validation of the jsons and schemas
# By default, It stop on file not commited.
# you could test with command ./validate_all.sh something
# Check Jsons format, and beautify
./jq_all_the_things.sh
rc=$?
if [[ $rc != 0 ]]; then
exit $rc
fi
set -e set -e
set -x set -x
./jq_all_the_things.sh
diffs=`git status --porcelain | wc -l` diffs=`git status --porcelain | wc -l`
if ! [ $diffs -eq 0 ]; then if ! [ $diffs -eq 0 ]; then
echo "Please make sure you run ./jq_all_the_things.sh before commiting." echo "Please make sure you run ./jq_all_the_things.sh before commiting."
if [ $# -eq 0 ]; then
exit 1 exit 1
fi fi
fi
# Validate schemas
for dir in clusters/*.json for dir in clusters/*.json
do do
echo -n "${dir}: " echo -n "${dir}: "
jsonschema -i ${dir} schema_clusters.json jsonschema -i ${dir} schema_clusters.json
rc=$?
if [[ $rc != 0 ]]; then
echo "Error on ${dir}"
exit $rc
fi
echo '' echo ''
done done
@ -23,6 +41,10 @@ for dir in galaxies/*.json
do do
echo -n "${dir}: " echo -n "${dir}: "
jsonschema -i ${dir} schema_galaxies.json jsonschema -i ${dir} schema_galaxies.json
rc=$?
if [[ $rc != 0 ]]; then
echo "Error on ${dir}"
exit $rc
fi
echo '' echo ''
done done