Refactor chat to use LlamaStack Conversations API #243
Workflow file for this run
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: | |
| pull_request: | |
| push: | |
| branches: [ main ] | |
| jobs: | |
| backend-unit-tests: | |
| name: Backend unit tests | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.12' | |
| cache: 'pip' | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r tests/requirements.txt -r backend/requirements.txt | |
| - name: Run unit tests | |
| env: | |
| PYTHONPATH: . | |
| run: | | |
| pytest tests/unit -ra --cov=backend --cov-branch --cov-report=term-missing | |
| frontend-checks: | |
| name: Frontend lint and build | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: frontend | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| cache: 'npm' | |
| cache-dependency-path: frontend/package-lock.json | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Lint (eslint) | |
| run: npm run lint | |
| - name: Prettier check | |
| run: npm run format:check | |
| - name: Type-check and build | |
| run: npm run build | |
| python-lint: | |
| name: Python lint (flake8, black, isort) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.12' | |
| cache: 'pip' | |
| - name: Install tools | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r backend/requirements.txt | |
| - name: flake8 | |
| run: flake8 backend --max-line-length=120 --extend-ignore=E203,W503 | |
| - name: black --check | |
| run: black --check backend | |
| - name: isort --check-only | |
| run: isort --check-only backend | |
| helm-lint: | |
| name: Helm chart lint | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Helm | |
| uses: azure/setup-helm@v4 | |
| - name: Lint chart | |
| run: helm lint deploy/cluster/helm/ | |
| pre-commit: | |
| name: Pre-commit hooks (backend) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Python 3.12 (for black hook) | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.12' | |
| - name: Install backend tools (for local hooks like vulture) | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r backend/requirements.txt | |
| - name: Run pre-commit | |
| uses: pre-commit/[email protected] | |
| with: | |
| extra_args: --all-files --config backend/.pre-commit-config.yaml |