summaryrefslogtreecommitdiff
path: root/infra/command/pylint
diff options
context:
space:
mode:
Diffstat (limited to 'infra/command/pylint')
-rw-r--r--infra/command/pylint37
1 files changed, 37 insertions, 0 deletions
diff --git a/infra/command/pylint b/infra/command/pylint
new file mode 100644
index 000000000..900156086
--- /dev/null
+++ b/infra/command/pylint
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+INVALID_EXIT=0
+
+__Check_PYLINT=${CHECK_PYLINT:-"1"}
+
+DIRECTORIES_NOT_TO_BE_TESTED=()
+
+pushd ${NNAS_PROJECT_PATH} > /dev/null
+
+for DIR_NOT_TO_BE_TESTED in $(git ls-files -co --exclude-standard '*/.FORMATDENY'); do
+ DIRECTORIES_NOT_TO_BE_TESTED+=($(dirname "${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
+
+popd > /dev/null
+
+if [[ $INVALID_EXIT -eq 0 ]]; then
+ echo "[PASSED] Format checker succeed."
+ return
+fi
+
+exit 1