-
Notifications
You must be signed in to change notification settings - Fork 5
35 lines (27 loc) · 1009 Bytes
/
Copy pathvalidate-models.yml
File metadata and controls
35 lines (27 loc) · 1009 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
name: Validate API Compliance
on:
push:
branches: ["main"]
pull_request:
branches: ["main"]
workflow_dispatch:
permissions:
contents: read
jobs:
check-models:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Set up Python 3.12
uses: actions/setup-python@v6
with:
python-version: "3.12"
- name: Download live OpenAPI spec
run: |
python -c "from pathlib import Path; from tools.openapi_spec import load_openapi_document; output = Path('.tmp/openapi.json'); output.parent.mkdir(parents=True, exist_ok=True); output.write_text(load_openapi_document(allow_fallback=False).text, encoding='utf-8', newline='\n')"
- name: Verify generated models are up to date
run: |
python tools/sync_generated.py --check --input .tmp/openapi.json
- name: Check API Coverage
run: |
python tools/check_coverage.py --openapi .tmp/openapi.json --src src/ksef_client/clients