mirror of
https://github.com/mostlygeek/llama-swap.git
synced 2026-06-09 06:46:34 +02:00
a4b91e08cf
- update README.md with new docker instructions - update docs/configuration.md - update .github/workflows to have pinned action versions - gofmt events package - fix small bugs in CI scripts - reduce config options for internal/perf/monitor and config. A ring buffer is used to keep 1hr of entries at max 5s granularity. For long term stats use prometheus monitoring on /metrics Fixes #744
57 lines
1.7 KiB
YAML
57 lines
1.7 KiB
YAML
name: Validate JSON Schema
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- "config-schema.json"
|
|
- "config.example.yaml"
|
|
- ".github/workflows/config-schema.yml"
|
|
push:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- "config-schema.json"
|
|
- "config.example.yaml"
|
|
- ".github/workflows/config-schema.yml"
|
|
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
validate-schema:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 6.0.2
|
|
|
|
- name: Validate JSON Schema
|
|
run: |
|
|
# Check if the file is valid JSON
|
|
if ! jq empty config-schema.json 2>/dev/null; then
|
|
echo "Error: config-schema.json is not valid JSON"
|
|
exit 1
|
|
fi
|
|
|
|
# Validate that it's a valid JSON Schema
|
|
# Check for required $schema field
|
|
if ! jq -e '."$schema"' config-schema.json > /dev/null; then
|
|
echo "Warning: config-schema.json should have a \$schema field"
|
|
fi
|
|
|
|
# Check that it has either properties or definitions
|
|
if ! jq -e '.properties or .definitions or ."$defs"' config-schema.json > /dev/null; then
|
|
echo "Warning: JSON Schema should contain properties, definitions, or \$defs"
|
|
fi
|
|
|
|
echo "✓ config-schema.json is valid"
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 #v6.2.0
|
|
with:
|
|
python-version: "3.x"
|
|
|
|
- name: Install check-jsonschema
|
|
run: pip install check-jsonschema
|
|
|
|
- name: Validate config.example.yaml against schema
|
|
run: check-jsonschema --schemafile config-schema.json config.example.yaml
|