Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
test.yml 5.42 KiB
name: Run Tests

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

env:
  POSTGRES_HOST_AUTH_METHOD: trust
  TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
  TURBO_TEAM: ${{ vars.TURBO_TEAM }}
  TURBO_REMOTE_ONLY: true

jobs:
  e2e:
    strategy:
      fail-fast: false
      matrix:
        node-version: [18.x, 20.x, 22.x, 23.x]
    name: E2E on Node.js ${{ matrix.node-version }}
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: ankane/setup-postgres@v1
        with:
          database: llamaindex_node_test
          dev-files: true
      - run: |
          cd /tmp
          git clone --branch v0.7.0 https://github.com/pgvector/pgvector.git
          cd pgvector
          make
          sudo make install
      - uses: pnpm/action-setup@v4
      - name: Setup Node.js
        uses: actions/setup-node@v4
        with:
          node-version: ${{ matrix.node-version }}
          cache: "pnpm"
      - name: Install dependencies
        run: pnpm install
      - name: Run E2E Tests
        run: pnpm run e2e

  test:
    strategy:
      fail-fast: false
      matrix:
        node-version: [18.x, 20.x, 22.x, 23.x]
    name: Test on Node.js ${{ matrix.node-version }}
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: pnpm/action-setup@v4
      - name: Setup Node.js
        uses: actions/setup-node@v4
        with:
          node-version: ${{ matrix.node-version }}
          cache: "pnpm"
      - name: Install dependencies
        run: pnpm install
      - name: Run tests
        run: pnpm run test