Skip to content

Commit

Permalink
json lint workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
itsmitul9 committed May 15, 2024
1 parent 4eb7800 commit 6e9aa7e
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions .github/workflows/jsonlint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: JSON Lint

on:
push:
paths:
- '**/*.py' # Trigger on any Python file change

jobs:
lint:
runs-on: ubuntu-latest

steps:
- name: Check out repository
uses: actions/checkout@v2

- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: 3.x

- name: Install jsonlint
run: pip install jsonlint

- name: Run jsonlint on Python files
run: |
for file in $(git ls-files '*.py'); do
grep -q "json.loads(" "$file" && echo "$file contains JSON" || continue
echo "Checking JSON in $file"
json=$(grep -o '"[^"]\{1,\}": [^,}\{]*' "$file" | grep -vP '^\s*#')
echo "$json" | while read -r line; do
echo "$line" | jsonlint -q || { echo "Invalid JSON in $file"; exit 1; }
done
done

0 comments on commit 6e9aa7e

Please sign in to comment.