Spaces:
Sleeping
Sleeping
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| backend: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.11" | |
| cache: pip | |
| - name: Install dependencies | |
| run: pip install -r requirements.txt flake8 pytest | |
| - name: Lint (critical errors only) | |
| run: flake8 src --select=E9,F63,F7,F82 --show-source | |
| - name: Unit tests | |
| run: python -m pytest tests -q | |
| - name: Import smoke test | |
| run: python -c "from src.api.app import app; from src.workflow.graph import app as graph_app; print('imports OK')" | |
| frontend: | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: frontend | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: "20" | |
| cache: npm | |
| cache-dependency-path: frontend/package-lock.json | |
| - name: Install dependencies | |
| run: npm ci --legacy-peer-deps | |
| - name: Lint | |
| continue-on-error: true | |
| run: npm run lint | |
| - name: Build | |
| run: npm run build | |