diff --git a/Jenkinsfile b/Jenkinsfile index 08617f4..79a843a 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -6,38 +6,7 @@ pipeline { steps { script { // Check for spaces or mixed indentation - sh ''' - # Save the results of the find command into a variable - FILETYPES="css|json|js|java|py|ps1|cs|cmd|bat|htm|html|cpp|c|h|hpp" - FILES=$(find . -regextype awk -regex ".*\.($FILETYPES)" -type f) - # Initialize the PROBLEMS variable - PROBLEMS="" - - # Pass the files to grep and sed - for file in $FILES; do - # Check for lines with spaces - GREP_RESULT=$(grep -nrP '^[ ]+' "$file") - if [ -n "$GREP_RESULT" ]; then - PROBLEMS="${PROBLEMS}File $file:$GREP_RESULT"$'\n' # Append the result to PROBLEMS - fi - - # Check for lines with mixed tabs and spaces - GREP_RESULT=$(grep -nrP '^\t+ +' "$file") - if [ -n "$GREP_RESULT" ]; then - PROBLEMS="${PROBLEMS}File $file:$GREP_RESULT"$'\n' # Append the result to PROBLEMS - fi - done - - # Check if there were any problems - if [ -n "$PROBLEMS" ]; then - echo "Indentation issues detected. Please fix the above lines." - echo "$PROBLEMS" - exit 1 - else - echo "No indentation issues detected." - exit 0 - fi - ''' + sh "./indentcheck.sh" } } } diff --git a/indentcheck.sh b/indentcheck.sh new file mode 100755 index 0000000..0b958c3 --- /dev/null +++ b/indentcheck.sh @@ -0,0 +1,31 @@ +#!/bin/bash +# Save the results of the find command into a variable +FILETYPES="css|json|js|java|py|ps1|cs|cmd|bat|htm|html|cpp|c|h|hpp" +FILES=$(find . -regextype awk -regex ".*\.($FILETYPES)" -type f) +# Initialize the PROBLEMS variable +PROBLEMS="" + +# Pass the files to grep and sed +for file in $FILES; do + # Check for lines with spaces + GREP_RESULT=$(grep -nrP '^[ ]+' "$file") + if [ -n "$GREP_RESULT" ]; then + PROBLEMS="${PROBLEMS}File $file:$GREP_RESULT"$'\n' # Append the result to PROBLEMS + fi + + # Check for lines with mixed tabs and spaces + GREP_RESULT=$(grep -nrP '^\t+ +' "$file") + if [ -n "$GREP_RESULT" ]; then + PROBLEMS="${PROBLEMS}File $file:$GREP_RESULT"$'\n' # Append the result to PROBLEMS + fi +done + +# Check if there were any problems +if [ -n "$PROBLEMS" ]; then + echo "Indentation issues detected. Please fix the above lines." + echo "$PROBLEMS" + exit 1 +else + echo "No indentation issues detected." + exit 0 +fi