remove REFACTORING_MODE

This commit is contained in:
Ivan Smolin 2021-01-18 15:54:54 +03:00
parent bb432d4220
commit e2f85337c0
1 changed files with 4 additions and 91 deletions

View File

@ -13,108 +13,23 @@
# Optional environment variables:
# SCRIPT_INPUT_FILE_COUNT - number of files listed in "Input files" of build phase.
# SCRIPT_INPUT_FILE_{N} - file path to directory that should be checked.
# REFACTORING_MODE - special bool flag for unconditional code checking.
#
# Modified files:
# ${PROJECT_DIR}/code-quality-reports/CPDLog.txt - check report.
# ${PROJECT_DIR}/code-quality-reports/CPDCommit - last checked commit.
#
# Example of usage:
# runner.sh copy_paste_detection.sh Generated Localization Pods
#
is_refactoring_mode()
{
if [ -z "${REFACTORING_MODE}" ]; then
return ${FALSE}
fi
readonly EXIT_SUCCESS=0
readonly EXIT_FAILURE=1
local -r STR_MODE=`tr "[:upper:]" "[:lower:]" <<< ${REFACTORING_MODE}`
if [ ${STR_MODE} == "yes" ] || [ ${STR_MODE} == "true" ] || [ ${STR_MODE} == "1" ]; then
return ${TRUE}
fi
return ${FALSE}
}
is_nothing_changed_since_last_check()
{
if is_refactoring_mode; then
echo "Refactoring mode detected. Skipping commits comparison."
return ${EXIT_FAILURE}
fi
if [ -z "${COMMIT_FILE_PATH}" ]; then
if [ ! -z "${1}" ]; then
local -r COMMIT_FILE_PATH=${1}
else
echo "COMMIT_FILE_PATH should be defined or passed as first argument!"
return ${EXIT_FAILURE}
fi
fi
if [ -z "${CURRENT_COMMIT}" ]; then
if [ ! -z "${2}" ]; then
local -r CURRENT_COMMIT=${2}
else
local -r CURRENT_COMMIT=`git rev-parse --verify HEAD`
fi
fi
local -r LAST_CHECKED_COMMIT=`cat ${COMMIT_FILE_PATH}` || ""
if [ ${CURRENT_COMMIT} = ${LAST_CHECKED_COMMIT} ]; then
if git diff --quiet --exit-code; then
echo "Commit your changes and run script again."
else
echo "Nothing was changed since ${LAST_CHECKED_COMMIT}. Skipping."
fi
return ${EXIT_SUCCESS}
else
return ${EXIT_FAILURE}
fi
}
record_current_commit()
{
if is_refactoring_mode; then
echo "Refactoring mode detected. Commit won't be recorder."
exit ${EXIT_SUCCESS}
fi
if [ -v "${CURRENT_COMMIT}" ]; then
if [ ! -v "${1}" ]; then
local -r CURRENT_COMMIT=${1}
else
local -r CURRENT_COMMIT=`git rev-parse --verify HEAD`
fi
fi
if [ -v "${COMMIT_FILE_PATH}" ]; then
if [ ! -v "${2}" ]; then
local -r COMMIT_FILE_PATH=${2}
else
echo "COMMIT_FILE_PATH should be defined or passed as second argument!"
return ${EXIT_FAILURE}
fi
fi
echo ${CURRENT_COMMIT} > ${COMMIT_FILE_PATH}
}
readonly TRUE=0
readonly FALSE=1
if which pmd >/dev/null; then
readonly REPORTS_DIR="${PROJECT_DIR}/code-quality-reports"
readonly COMMIT_FILE_PATH="${REPORTS_DIR}/CPDCommit"
readonly CURRENT_COMMIT=`git rev-parse --verify HEAD`
if is_nothing_changed_since_last_check; then
exit ${EXIT_SUCCESS}
fi
readonly SOURCES_DIRS=`. ${SCRIPT_DIR}/common/read_input_file_names.sh " " ${PROJECT_DIR}`
readonly COMMAND_LINE_ARGUMENTS=$@
@ -140,8 +55,6 @@ if which pmd >/dev/null; then
readonly SED_REPLACEMENT_STRING=$(echo ${PROJECT_DIR} | sed "s/\//\\\\\//g")
sed -i '' "s/${SED_REPLACEMENT_STRING}//g" "${REPORTS_DIR}/CPDLog.txt"
record_current_commit
else
echo "warning: pmd not installed, install using 'brew install pmd'"