feat: support workflow multi version recovery #4038
Workflow file for this run
This file contains 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: Run Pytest | |
on: | |
pull_request: | |
branches: | |
- main | |
paths: | |
- api/** | |
- docker/** | |
concurrency: | |
group: api-tests-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
test: | |
name: API Tests | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: | |
- "3.10" | |
- "3.11" | |
- "3.12" | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Install Poetry | |
uses: abatilo/actions-poetry@v3 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: 'poetry' | |
cache-dependency-path: | | |
api/pyproject.toml | |
api/poetry.lock | |
- name: Poetry check | |
run: | | |
poetry check -C api --lock | |
poetry show -C api | |
- name: Install dependencies | |
run: poetry install -C api --with dev | |
- name: Run Unit tests | |
run: poetry run -C api bash dev/pytest/pytest_unit_tests.sh | |
- name: Run ModelRuntime | |
run: poetry run -C api bash dev/pytest/pytest_model_runtime.sh | |
- name: Run Tool | |
run: poetry run -C api bash dev/pytest/pytest_tools.sh | |
- name: Set up dotenvs | |
run: | | |
cp docker/.env.example docker/.env | |
cp docker/middleware.env.example docker/middleware.env | |
- name: Expose Service Ports | |
run: sh .github/workflows/expose_service_ports.sh | |
- name: Set up Sandbox | |
uses: hoverkraft-tech/[email protected] | |
with: | |
compose-file: | | |
docker/docker-compose.middleware.yaml | |
services: | | |
sandbox | |
ssrf_proxy | |
- name: Run Workflow | |
run: poetry run -C api bash dev/pytest/pytest_workflow.sh | |
- name: Set up Vector Stores (Weaviate, Qdrant, PGVector, Milvus, PgVecto-RS, Chroma, MyScale, ElasticSearch) | |
uses: hoverkraft-tech/[email protected] | |
with: | |
compose-file: | | |
docker/docker-compose.yaml | |
services: | | |
weaviate | |
qdrant | |
etcd | |
minio | |
milvus-standalone | |
pgvecto-rs | |
pgvector | |
chroma | |
elasticsearch | |
- name: Test Vector Stores | |
run: poetry run -C api bash dev/pytest/pytest_vdb.sh |