mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-10-03 17:50:11 +02:00
92a4bacbf6
No need to find out the basedir. We don't do it for the python tests anyway.
52 lines
1.2 KiB
Bash
Executable File
52 lines
1.2 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Simple pre-commit hook to check that there are no errors in the fdroid
|
|
# metadata files.
|
|
|
|
# Redirect output to stderr.
|
|
exec 1>&2
|
|
|
|
FILES="fdroid makebuildserver setup.py examples/*.py buildserver/*.py fdroidserver/*.py"
|
|
|
|
cmd_exists() {
|
|
command -v $1 1>/dev/null
|
|
}
|
|
|
|
# For systems that switched to python3, first check for the python2 versions
|
|
if cmd_exists pyflakes-python2; then
|
|
PYFLAKES=pyflakes-python2
|
|
elif cmd_exists pyflakes; then
|
|
PYFLAKES=pyflakes
|
|
else
|
|
echo "pyflakes is not installed!"
|
|
fi
|
|
|
|
if cmd_exists pep8-python2; then
|
|
PEP8=pep8-python2
|
|
elif cmd_exists pep8; then
|
|
PEP8=pep8
|
|
else
|
|
echo "pep8 is not installed!"
|
|
fi
|
|
|
|
# If there are python errors or warnings, print them and fail.
|
|
[ -n $PYFLAKES ] && $PYFLAKES $FILES
|
|
[ -n $PEP8 ] && $PEP8 --ignore=E123,E501 $FILES
|
|
|
|
|
|
#------------------------------------------------------------------------------#
|
|
# check the syntax of included shell scripts
|
|
|
|
exitstatus=0
|
|
# use bash to check that the syntax is correct
|
|
for f in fd-commit jenkins-build docs/*.sh hooks/pre-commit; do
|
|
if bash -n $f; then
|
|
: # success! do nothing
|
|
else
|
|
echo "FAILED!"
|
|
exitstatus=1
|
|
fi
|
|
done
|
|
|
|
exit $exitstatus
|