From fad495ad320a5fc957841dec5880371e70c59662 Mon Sep 17 00:00:00 2001 From: Ivan Valdes Date: Wed, 11 Dec 2024 23:05:31 -0800 Subject: [PATCH] scripts: fix shellws check Originally this was intended to be a clean up. But after further investigation the original code didn't work. It didn't detect tabs in shell scripts. Signed-off-by: Ivan Valdes --- scripts/test.sh | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/scripts/test.sh b/scripts/test.sh index 3b15638cfb3..4dfd36391b7 100755 --- a/scripts/test.sh +++ b/scripts/test.sh @@ -340,24 +340,15 @@ function shellcheck_pass { } function shellws_pass { - TAB=$'\t' log_callout "Ensuring no tab-based indention in shell scripts" local files - files=$(find ./ -name '*.sh' -print0 | xargs -0 ) - # shellcheck disable=SC2206 - files=( ${files[@]} "./scripts/build-binary.sh" "./scripts/build-docker.sh" "./scripts/release.sh" ) - log_cmd "grep -E -n $'^ *${TAB}' ${files[*]}" - # shellcheck disable=SC2086 - if grep -E -n $'^ *${TAB}' "${files[@]}" | sed $'s|${TAB}|[\\\\tab]|g'; then - log_error "FAIL: found tab-based indention in bash scripts. Use ' ' (double space)." - local files_with_tabs - files_with_tabs=$(grep -E -l $'^ *\\t' "${files[@]}") - log_warning "Try: sed -i 's|\\t| |g' $files_with_tabs" - return 1 - else - log_success "SUCCESS: no tabulators found." - return 0 + if files=$(find . -name '*.sh' -print0 | xargs -0 grep -E -n $'^\s*\t'); then + log_error "FAIL: found tab-based indention in the following bash scripts. Use ' ' (double space):" + log_error "${files}" + log_warning "Suggestion: run \"make fix\" to address the issue." + return 255 fi + log_success "SUCCESS: no tabulators found." } function markdown_marker_pass {