Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. name: Run VDB Tests
  2. on:
  3. workflow_call:
  4. concurrency:
  5. group: vdb-tests-${{ github.head_ref || github.run_id }}
  6. cancel-in-progress: true
  7. jobs:
  8. test:
  9. name: VDB Tests
  10. runs-on: ubuntu-latest
  11. strategy:
  12. matrix:
  13. python-version:
  14. - "3.11"
  15. - "3.12"
  16. steps:
  17. - name: Checkout code
  18. uses: actions/checkout@v4
  19. with:
  20. persist-credentials: false
  21. - name: Free Disk Space
  22. uses: endersonmenezes/free-disk-space@v2
  23. with:
  24. remove_dotnet: true
  25. remove_haskell: true
  26. remove_tool_cache: true
  27. - name: Setup UV and Python
  28. uses: astral-sh/setup-uv@v6
  29. with:
  30. enable-cache: true
  31. python-version: ${{ matrix.python-version }}
  32. cache-dependency-glob: api/uv.lock
  33. - name: Check UV lockfile
  34. run: uv lock --project api --check
  35. - name: Install dependencies
  36. run: uv sync --project api --dev
  37. - name: Set up dotenvs
  38. run: |
  39. cp docker/.env.example docker/.env
  40. cp docker/middleware.env.example docker/middleware.env
  41. - name: Expose Service Ports
  42. run: sh .github/workflows/expose_service_ports.sh
  43. - name: Set up Vector Store (TiDB)
  44. uses: hoverkraft-tech/compose-action@v2.0.2
  45. with:
  46. compose-file: docker/tidb/docker-compose.yaml
  47. services: |
  48. tidb
  49. tiflash
  50. - name: Set up Vector Stores (Weaviate, Qdrant, PGVector, Milvus, PgVecto-RS, Chroma, MyScale, ElasticSearch, Couchbase, OceanBase)
  51. uses: hoverkraft-tech/compose-action@v2.0.2
  52. with:
  53. compose-file: |
  54. docker/docker-compose.yaml
  55. services: |
  56. weaviate
  57. qdrant
  58. couchbase-server
  59. etcd
  60. minio
  61. milvus-standalone
  62. pgvecto-rs
  63. pgvector
  64. chroma
  65. elasticsearch
  66. oceanbase
  67. - name: setup test config
  68. run: |
  69. echo $(pwd)
  70. ls -lah .
  71. cp api/tests/integration_tests/.env.example api/tests/integration_tests/.env
  72. - name: Check VDB Ready (TiDB)
  73. run: uv run --project api python api/tests/integration_tests/vdb/tidb_vector/check_tiflash_ready.py
  74. - name: Test Vector Stores
  75. run: uv run --project api bash dev/pytest/pytest_vdb.sh