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 <ivan@vald.es>
This commit is contained in:
Ivan Valdes 2024-12-11 23:05:31 -08:00
parent fe14e244f8
commit fad495ad32
No known key found for this signature in database
GPG Key ID: 4037D37741ED0CC5

View File

@ -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 {