name: MemGPT tests env: PGVECTOR_TEST_DB_URL: ${{ secrets.PGVECTOR_TEST_DB_URL }} OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} on: push: branches: [ main ] pull_request: branches: [ main ] jobs: test: runs-on: ubuntu-latest env: PGVECTOR_TEST_DB_URL: postgresql+pg8000://memgpt:memgpt@localhost:8888/memgpt OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} timeout-minutes: 5 steps: - name: Checkout uses: actions/checkout@v2 - name: Build and run container run: bash db/run_postgres.sh - name: Set up Python uses: actions/setup-python@v4 with: python-version: "3.11" - name: Install poetry run: pip install poetry - name: Set Poetry config run: | poetry config virtualenvs.in-project false poetry config virtualenvs.path ~/.virtualenvs - name: Install dependencies using Poetry env: PGVECTOR_TEST_DB_URL: postgresql+pg8000://memgpt:memgpt@localhost:8888/memgpt OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} run: | poetry install -E dev -E postgres -E local -E server - name: Set Poetry config env: PGVECTOR_TEST_DB_URL: postgresql+pg8000://memgpt:memgpt@localhost:8888/memgpt OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} run: | poetry config virtualenvs.in-project false poetry config virtualenvs.path ~/.virtualenvs - name: Run tests with pytest env: PGVECTOR_TEST_DB_URL: postgresql+pg8000://memgpt:memgpt@localhost:8888/memgpt OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} run: | PGVECTOR_TEST_DB_URL=postgresql+pg8000://memgpt:memgpt@localhost:8888/memgpt OPENAI_API_KEY=${{ secrets.OPENAI_API_KEY }} poetry run pytest -s -vv tests