chore(deps)(deps): bump jsonschema from 4.25.1 to 4.26.0 #62
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| schedule: | |
| - cron: '0 6 * * *' # Daily at 6 AM UTC | |
| workflow_dispatch: | |
| concurrency: | |
| group: ci-${{ github.ref }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| lint: | |
| name: π Lint | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| steps: | |
| - name: π₯ Checkout Repository | |
| uses: actions/checkout@v6 | |
| - name: π Setup Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: '3.11' | |
| cache: 'pip' | |
| - name: π¦ Install ruff | |
| run: pip install ruff | |
| - name: π§ Run Ruff Auto-fix (dry-run) | |
| run: | | |
| echo "Checking for auto-fixable issues..." | |
| python -m ruff check . --fix --diff || true | |
| - name: π Run Linter | |
| run: | | |
| echo "Running ruff linter..." | |
| python -m ruff check . | |
| test-fast: | |
| name: π§ͺ Fast Tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| needs: lint | |
| steps: | |
| - name: π₯ Checkout Repository | |
| uses: actions/checkout@v6 | |
| - name: π Setup Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: '3.11' | |
| cache: 'pip' | |
| - name: π¦ Install Dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r requirements.txt | |
| pip install pytest | |
| - name: π§ͺ Run Fast Tests (excluding integration) | |
| run: | | |
| echo "Running fast tests (excluding integration tests)..." | |
| python -m pytest tests/ -v -m "not integration" --tb=short | |
| integration: | |
| name: π Integration Tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| needs: [lint, test-fast] | |
| # Only run integration tests on schedule or manual dispatch | |
| if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' | |
| steps: | |
| - name: π₯ Checkout Repository | |
| uses: actions/checkout@v6 | |
| - name: π Setup Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: '3.11' | |
| cache: 'pip' | |
| - name: π¦ Install Dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r requirements.txt | |
| pip install pytest | |
| - name: π Run Integration Tests | |
| run: | | |
| echo "Running integration tests..." | |
| python -m pytest tests/ -v -m "integration" --tb=short |