name: Run All pytest Tests env: MEMGPT_PGURI: ${{ secrets.MEMGPT_PGURI }} on: push: branches: [ main ] pull_request: branches: [ main ] jobs: test: runs-on: ubuntu-latest timeout-minutes: 15 steps: - name: Checkout uses: actions/checkout@v4 - name: Build and run container run: bash db/run_postgres.sh - name: "Setup Python, Poetry and Dependencies" uses: packetcoders/action-setup-cache-python-poetry@main with: python-version: "3.12" poetry-version: "1.8.2" install-args: "-E dev -E postgres -E milvus" - name: Initialize credentials run: poetry run memgpt quickstart --backend memgpt #- name: Run docker compose server # env: # MEMGPT_PG_DB: memgpt # MEMGPT_PG_USER: memgpt # MEMGPT_PG_PASSWORD: memgpt # MEMGPT_SERVER_PASS: test_server_token # MEMGPT_CONFIG_PATH: configs/server_config.yaml # run: docker compose up -d - name: Run server tests env: MEMGPT_PG_PORT: 8888 MEMGPT_PG_USER: memgpt MEMGPT_PG_PASSWORD: memgpt MEMGPT_PG_DB: memgpt MEMGPT_PG_HOST: localhost MEMGPT_SERVER_PASS: test_server_token run: | poetry run pytest -s -vv tests/test_server.py - name: Run tests with pytest env: MEMGPT_PG_PORT: 8888 MEMGPT_PG_USER: memgpt MEMGPT_PG_PASSWORD: memgpt MEMGPT_PG_HOST: localhost MEMGPT_PG_DB: memgpt MEMGPT_SERVER_PASS: test_server_token PYTHONPATH: ${{ github.workspace }}:${{ env.PYTHONPATH }} run: | poetry run pytest -s -vv -k "not test_quickstart and not test_endpoints and not test_storage and not test_server and not test_openai_client" tests - name: Run storage tests env: MEMGPT_PG_PORT: 8888 MEMGPT_PG_USER: memgpt MEMGPT_PG_PASSWORD: memgpt MEMGPT_PG_HOST: localhost MEMGPT_PG_DB: memgpt MEMGPT_SERVER_PASS: test_server_token run: | poetry run pytest -s -vv tests/test_storage.py