aboutsummaryrefslogtreecommitdiff
path: root/test/lint/lint-shell.sh
diff options
context:
space:
mode:
Diffstat (limited to 'test/lint/lint-shell.sh')
-rwxr-xr-xtest/lint/lint-shell.sh10
1 files changed, 6 insertions, 4 deletions
diff --git a/test/lint/lint-shell.sh b/test/lint/lint-shell.sh
index 5540a0f74f..2bb76ec286 100755
--- a/test/lint/lint-shell.sh
+++ b/test/lint/lint-shell.sh
@@ -46,15 +46,17 @@ if ! command -v yq > /dev/null; then
fi
EXCLUDE_GITIAN=${EXCLUDE}",$(IFS=','; echo "${disabled_gitian[*]}")"
+SHELLCHECK_CMD="shellcheck --external-sources --check-sourced $EXCLUDE_GITIAN"
for descriptor in $(git ls-files -- 'contrib/gitian-descriptors/*.yml')
do
- echo
- echo "$descriptor"
+ script=$(basename "$descriptor")
# Use #!/bin/bash as gitian-builder/bin/gbuild does to complete a script.
- SCRIPT=$'#!/bin/bash\n'$(yq -r .script "$descriptor")
- if ! echo "$SCRIPT" | shellcheck "$EXCLUDE_GITIAN" -; then
+ echo "#!/bin/bash" > $script
+ yq -r .script "$descriptor" >> $script
+ if ! $SHELLCHECK_CMD $script; then
EXIT_CODE=1
fi
+ rm $script
done
exit $EXIT_CODE