mirror of
https://github.com/nextcloud/all-in-one.git
synced 2024-11-10 17:03:44 +08:00
3d1611f8ba
Signed-off-by: Simon L <szaimen@e.mail.de>
35 lines
1 KiB
YAML
35 lines
1 KiB
YAML
name: Json Validator
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- '**.json'
|
|
push:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- '**.json'
|
|
|
|
jobs:
|
|
json-validator:
|
|
name: Json Validator
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
- name: Validate Json
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install python3-pip -y --no-install-recommends
|
|
sudo pip3 install json-spec
|
|
if ! json validate --schema-file=php/containers-schema.json --document-file=php/containers.json; then
|
|
exit 1
|
|
fi
|
|
JSON_FILES="$(find ./community-containers -name '*.json')"
|
|
mapfile -t JSON_FILES <<< "$JSON_FILES"
|
|
for file in "${JSON_FILES[@]}"; do
|
|
json validate --schema-file=php/containers-schema.json --document-file="$file" 2>&1 | tee -a ./json-validator.log
|
|
done
|
|
if grep -q "document does not validate with schema." ./json-validator.log; then
|
|
exit 1
|
|
fi
|