Skip to content

chore: switch to PostgreSQL (Supabase) and fix dialect compatibility #117

chore: switch to PostgreSQL (Supabase) and fix dialect compatibility

chore: switch to PostgreSQL (Supabase) and fix dialect compatibility #117

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
# Required for tests that need LLM configuration
LLM_MODEL: gpt-4o-mini
LLM_PROVIDER: openai
# Use official PyPI in CI (override any mirror settings)
UV_INDEX_URL: "https://pypi.org/simple/"
jobs:
backend:
name: Backend Test
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Set up uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
- name: Install backend dependencies
run: |
# Replace Tsinghua mirror URLs with official PyPI for CI compatibility
sed -i 's|https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/|https://pypi.org/simple/|g' uv.lock
sed -i 's|https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/|https://files.pythonhosted.org/packages/|g' uv.lock
uv sync --locked
- name: Run backend tests (skip LLM tests)
run: uv run python -m pytest tests/ -v -m "not requires_llm"
frontend:
name: Frontend Check
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up pnpm
uses: pnpm/action-setup@v4
with:
version: 9
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
cache: pnpm
cache-dependency-path: ui/pnpm-lock.yaml
- name: Install frontend dependencies
working-directory: ui
run: pnpm install --frozen-lockfile
- name: Run typecheck
working-directory: ui
run: pnpm run typecheck
- name: Run production build
working-directory: ui
run: npx vite build