From d4e267952a78be10c1a8916adb82637e58164def 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 | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/scripts/test.sh b/scripts/test.sh index 16312967eae..d75ad57da65 100755 --- a/scripts/test.sh +++ b/scripts/test.sh @@ -340,24 +340,14 @@ 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 + local files + if ! files=$(find . -name '*.sh' -print0 | xargs -0 awk '/^\s*\t/{print FILENAME;exit 1}'); 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 + log_warning "Try: sed -i 's|\\t| |g' ${files}" + return 255 fi + log_success "SUCCESS: no tabulators found." } function markdown_marker_pass {