Files
wordpress/tests/test_shell.sh
T
stevensting 5d891c88c7
continuous-integration/drone/push Build is failing
Revert "Fix lint issues and improve test suite resilience"
This reverts commit 90d44bd3bc.
2026-07-21 16:09:11 +02:00

42 lines
1004 B
Bash
Executable File

#!/bin/bash
set -euo pipefail
pass=0
fail=0
# Allow overriding shellcheck options via env var (e.g. -s bash)
EXTRA_SHELLCHECK_OPTS="${SHELLCHECK_OPTS:-}"
# Run shellcheck on a Go template after stripping template tags
shellcheck_tmpl() {
local tmpl=$1
# Strip Go template tags ({{ ... }} and {{- ... -}}) into whitespace
# so shellcheck can parse the remaining bash.
local cleaned
cleaned=$(sed 's/{{[-]*[^}]*[-]*}}/true/g' "$tmpl")
local tmpfile
tmpfile=$(mktemp)
printf '%s\n' "$cleaned" > "$tmpfile"
if shellcheck $EXTRA_SHELLCHECK_OPTS "$tmpfile"; then
echo " PASS $tmpl"
pass=$((pass + 1))
else
echo " FAIL $tmpl"
fail=$((fail + 1))
fi
rm -f "$tmpfile"
}
echo "=== ShellCheck ==="
# Lint each template file passed as argument
for f in "$@"; do
[ -f "$f" ] && shellcheck_tmpl "$f"
done
echo "---"
echo "Passed: $pass Failed: $fail"
# Exit with failure if any template failed shellcheck
[ "$fail" -eq 0 ]