From 0f3288145e186183873a50c82f6785039ffe0fb5 Mon Sep 17 00:00:00 2001 From: Vulpovile Date: Sat, 11 Jan 2025 15:01:50 -0800 Subject: [PATCH] Fix jenkinsfile --- Jenkinsfile | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index d583b3c..6e962eb 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -7,16 +7,28 @@ pipeline { script { // Check for spaces or mixed indentation sh ''' - EXTENSIONS=css,js,json,java,bat,ps1,py,cs,html,c,cpp,h,hpp,cmd - if grep -P "^[ ]+" -r --include=*.{$EXTENSIONS} ; then - echo "Error: Files contain spaces instead of tabs for indentation." + FILE_EXTENSIONS="css json js java py ps1 cs cmd bat htm html cpp c h hpp" + + INCLUDE_PATTERNS=$(echo $FILE_EXTENSIONS | sed 's/ /,*.*/g; s/^/*.*/') + + + # Convert FILE_EXTENSIONS to --include pattern + INCLUDE_PATTERNS=$(echo $FILE_EXTENSIONS | sed 's/ /,*.*/g; s/^/*.*/') + + echo "Checking for lines starting with spaces in $FILE_EXTENSIONS files..." + grep -nrP '^[ ]+' --include="$INCLUDE_PATTERNS" . | sed 's/\\([^:]*\\):\\([^:]*\\):\\([ ]*\\).*/File: \\1, Line: \\2, Found: \\3/' || echo "No lines with spaces found." + + echo "Checking for lines with mixed tabs and spaces in $FILE_EXTENSIONS files..." + grep -nrP '^\t+ +' --include="$INCLUDE_PATTERNS" . | sed 's/\\([^:]*\\):\\([^:]*\\):\\(\\t* +\\).*/File: \\1, Line: \\2, Found: \\3/' || echo "No lines with mixed indentation found." + + if grep -nrP '^[ ]+' --include="$INCLUDE_PATTERNS" . || \ + grep -nrP '^\t+ +' --include="$INCLUDE_PATTERNS" .; then + echo "Indentation issues detected. Please fix the above lines." exit 1 + else + echo "No indentation issues detected." + exit 0 fi - if grep -P "^\\t+ +" -r --include=*.{$EXTENSIONS} ; then - echo "Error: Files contain mixed tabs and spaces for indentation." - exit 1 - fi - echo "No indentation errors detected." ''' } }