diff --git a/check.sh b/check.sh old mode 100644 new mode 100755 index d1c91d6..a668dfd --- a/check.sh +++ b/check.sh @@ -1,12 +1,22 @@ #!/bin/sh -dirname=$1 -find $dirname -type f | sed 's_.*/__' | awk -F"__" '{print $1}' | sort | uniq -d | -while read fileName +INPUT_DIRECTORY=$1 +INPUT_FILE_FIND_PATTERN=${2:-"*.sql"} + +echo Scanning ${INPUT_DIRECTORY} + +find "${INPUT_DIRECTORY}" -type f -name "${INPUT_FILE_FIND_PATTERN}" | sed 's!.*/!!' | sed 's/\(.*_[0-9]*\)__.*/\1/g;t' | sort | uniq -d | +while read prefix do - find $dirname -type f | grep "${fileName}" | - while read fname + find "${INPUT_DIRECTORY}" -type f -name "${INPUT_FILE_FIND_PATTERN}" | grep "${prefix}" | + while read fileName do - echo "${fname}:1:1: Duplicate filename -- ${fileName}" + echo "${fileName}:1:1: Duplicate filename -- ${prefix}" done done + +find ${INPUT_DIRECTORY} -type f -name "\"${INPUT_FILE_FIND_PATTERN}\"" | sed 's_.*/__' | awk -F"__" '{print $1}' | sort | grep '\.' | +while read fileName +do + echo "${fileName}: Invalid version format" >> .dupe.out +done diff --git a/script.sh b/script.sh index 60b16b9..79dfb32 100755 --- a/script.sh +++ b/script.sh @@ -15,13 +15,13 @@ export REVIEWDOG_GITHUB_API_TOKEN="${INPUT_GITHUB_TOKEN}" echo Scanning ${INPUT_DIRECTORY} -find ${INPUT_DIRECTORY} -type f -name "\"${INPUT_FILE_FIND_PATTERN}\"" | sed 's_.*/__' | awk -F"__" '{print $1}' | sort | uniq -d | -while read fileName +find "${INPUT_DIRECTORY}" -type f -name "${INPUT_FILE_FIND_PATTERN}" | sed 's!.*/!!' | sed 's/\(.*_[0-9]*\)__.*/\1/g;t' | sort | uniq -d | +while read prefix do - find $dirname -type f | grep "${fileName}" | - while read fname + find "${INPUT_DIRECTORY}" -type f -name "${INPUT_FILE_FIND_PATTERN}" | grep "${prefix}" | + while read fileName do - echo "${fname}:1:1: Duplicate filename for prefix ${fileName}" >> .dupe.out + echo "${fileName}:1:1: Duplicate filename -- ${prefix}" >> .dupe.out done done