Multi-profile embedding serving, FTS deprecation cleanup, doctor --fix #441
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] | |
| workflow_call: | |
| jobs: | |
| build-and-test: | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| fail-fast: false | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 9 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: pnpm | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Type-check | |
| run: pnpm build | |
| - name: Test | |
| run: pnpm test | |
| postgres-storage-tests: | |
| # Postgres + pgvector conformance suite for the `postgres` storage backend | |
| # (Phase 102). Linux-only service container; the main build-and-test job | |
| # runs everything else (and skips these tests, since | |
| # GITSEMA_TEST_POSTGRES_URL is unset there). | |
| runs-on: ubuntu-latest | |
| services: | |
| postgres: | |
| image: pgvector/pgvector:pg16 | |
| env: | |
| POSTGRES_USER: gitsema | |
| POSTGRES_PASSWORD: gitsema | |
| POSTGRES_DB: gitsema | |
| ports: | |
| - 5432:5432 | |
| options: >- | |
| --health-cmd "pg_isready -U gitsema" | |
| --health-interval 5s | |
| --health-timeout 5s | |
| --health-retries 10 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 9 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: pnpm | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Type-check | |
| run: pnpm build | |
| - name: Postgres storage tests | |
| run: pnpm test -- postgres | |
| env: | |
| GITSEMA_TEST_POSTGRES_URL: postgres://gitsema:gitsema@localhost:5432/gitsema | |
| qdrant-storage-tests: | |
| # Qdrant + Postgres companion conformance suite for the `qdrant` storage | |
| # backend (Phase 103). Linux-only service containers; the main | |
| # build-and-test job skips these tests since GITSEMA_TEST_QDRANT_URL is | |
| # unset there. | |
| runs-on: ubuntu-latest | |
| services: | |
| postgres: | |
| image: pgvector/pgvector:pg16 | |
| env: | |
| POSTGRES_USER: gitsema | |
| POSTGRES_PASSWORD: gitsema | |
| POSTGRES_DB: gitsema | |
| ports: | |
| - 5432:5432 | |
| options: >- | |
| --health-cmd "pg_isready -U gitsema" | |
| --health-interval 5s | |
| --health-timeout 5s | |
| --health-retries 10 | |
| qdrant: | |
| image: qdrant/qdrant:v1.13.0 | |
| ports: | |
| - 6333:6333 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 9 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: pnpm | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Type-check | |
| run: pnpm build | |
| - name: Qdrant storage tests | |
| run: pnpm test -- qdrant | |
| env: | |
| GITSEMA_TEST_POSTGRES_URL: postgres://gitsema:gitsema@localhost:5432/gitsema | |
| GITSEMA_TEST_QDRANT_URL: http://localhost:6333 |