aboutsummaryrefslogtreecommitdiff
path: root/validators/bash
diff options
context:
space:
mode:
authorAlex Pooley (@zuedev) <zuedev@gmail.com>2026-02-05 16:15:11 +0000
committerAlex Pooley (@zuedev) <zuedev@gmail.com>2026-02-05 16:15:11 +0000
commita1e1f37cae464293221559c33433e336c02d7f5e (patch)
treefaf3bc3f1f25b914a16cef0fac50cee08e4d3915 /validators/bash
parent9c5c61c43de48492dbf736ebf2da6b164147602b (diff)
downloadgitinfo-a1e1f37cae464293221559c33433e336c02d7f5e.tar
gitinfo-a1e1f37cae464293221559c33433e336c02d7f5e.tar.gz
gitinfo-a1e1f37cae464293221559c33433e336c02d7f5e.tar.bz2
gitinfo-a1e1f37cae464293221559c33433e336c02d7f5e.tar.xz
gitinfo-a1e1f37cae464293221559c33433e336c02d7f5e.zip
install GNU sed and use bash shell in CI for Alpine
Diffstat (limited to 'validators/bash')
-rw-r--r--validators/bash/validate.sh10
1 files changed, 6 insertions, 4 deletions
diff --git a/validators/bash/validate.sh b/validators/bash/validate.sh
index 82b4af2..201c0b7 100644
--- a/validators/bash/validate.sh
+++ b/validators/bash/validate.sh
@@ -25,10 +25,12 @@ fi
# Strip JSONC comments using sed
strip_comments() {
- # Remove carriage returns (Windows line endings), single-line comments, and multi-line comments
- # Also remove trailing commas before } or ] (valid in JSONC, invalid in JSON)
- # Uses POSIX-compatible sed syntax for portability (works with busybox sed)
- cat "$1" | tr -d '\r' | sed 's|//.*$||g' | sed 's|/\*[^*]*\*/||g' | sed 's/,[ ]*}/}/g' | sed 's/,[ ]*]/]/g'
+ # Remove carriage returns, single-line comments, multi-line comments, and trailing commas
+ tr -d '\r' < "$1" \
+ | sed 's|//.*||g' \
+ | sed 's|/\*[^*]*\*/||g' \
+ | sed 's/,[[:space:]]*}/}/g' \
+ | sed 's/,[[:space:]]*]/]/g'
}
# Validate URI format