summaryrefslogtreecommitdiff
path: root/infra/command/pylint
blob: d20f89169b20b8e46b9e22d518d89d2aabf6121e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/bash

INVALID_EXIT=0

__Check_PYLINT=${CHECK_PYLINT:-"1"}

DIRECTORIES_NOT_TO_BE_TESTED=()

for DIR_NOT_TO_BE_TESTED in $(find -name '.FORMATDENY' -exec dirname {} \;); do
    DIRECTORIES_NOT_TO_BE_TESTED+=("$DIR_NOT_TO_BE_TESTED")
done

PYTHON_FILES_TO_CHECK=$(git ls-files '*.py')
ARR=($PYTHON_FILES_TO_CHECK)
for s in ${DIRECTORIES_NOT_TO_BE_TESTED[@]}; do
    skip=${s#'.'/}/
    ARR=(${ARR[*]//$skip*/})
done
PYTHON_FILES_TO_CHECK=${ARR[*]}
if [[ ${#PYTHON_FILES_TO_CHECK} -ne 0 ]]; then
    pylint --disable=all --enable="E0110, E0203, W1401, W1402, W0221, W0199, W0111, E0237, E1111, E1128, E0701, E0703, E1300, W1302, W1300, W1501, E0012, E0111, W0211, E1310, E1003, W0702, W0711, W1502, E0712, W0640, W0124, E0116, W0102, W1505, W0402, E0108, E0241, W0705, W0109, W0123, W0122, W0106, W1305, E1303, E0102, W0604, W0603, W0602, W0601, W0406, E0240, E0239, E0100, E0604, W1307, E0303, E1139, E1126, E1127, E0238, E0236, E0113, E1130, W1202, E1201, W1201, E1206, E1205, E1200, W0150, E0202, E0704, W0410, W1303, W1306, E1304, E1125, E1302, W0223, E0213, W0233, E0107, E0115, E0117, E1134, E1133, E0103, E0711, W0104, W0105, E0702, E0710, W0623, W0622, E1124, W0404, E0402, E1132, E0101, E0104, W0222, E0114, W0231, E0001, E1306, E1305, E1121, E0112, E1301, E0632, E0603, E0602, W0108, W0107, W0101, E0011, E1137, E1131, E1138, E1135, W1304, W1301, E0601, W0120, E1700" $PYTHON_FILES_TO_CHECK
    EXIT_CODE=$?
    if [[ $EXIT_CODE -ne 0 ]]; then
        INVALID_EXIT=$EXIT_CODE
    fi
fi

if [[ $INVALID_EXIT -eq 0 ]]; then
    echo "[PASSED] Format checker succeed."
    return
fi
exit 1