name: test | python 3.9 on: pull_request: branches: - main workflow_dispatch: concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true env: RUNTIME__LOG_LEVEL: ERROR jobs: get_docs_changes: name: docs changes uses: ./.github/workflows/get_docs_changes.yml setup_docker: name: Set up Docker Buildx runs-on: ubuntu-latest strategy: fail-fast: false steps: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 run_common: name: test needs: get_docs_changes if: needs.get_docs_changes.outputs.changes_outside_docs == 'true' runs-on: ubuntu-latest strategy: fail-fast: false defaults: run: shell: bash services: postgres: image: postgres:latest env: PGUSER: cognee POSTGRES_USER: cognee POSTGRES_PASSWORD: cognee POSTGRES_DB: cognee_db volumes: - postgres_data:/var/lib/postgresql/data ports: - 5432:5432 steps: - name: Check out uses: actions/checkout@master - name: Setup Python uses: actions/setup-python@v5 with: python-version: '3.9.x' - name: Install Poetry # https://github.com/snok/install-poetry#running-on-windows uses: snok/install-poetry@v1.3.2 with: virtualenvs-create: true virtualenvs-in-project: true installer-parallel: true - name: Install dependencies run: poetry install --no-interaction - name: Create .cognee_system directory and print path run: | mkdir .cognee_system echo $(pwd)/.cognee_system - name: Wait for PostgreSQL to be ready env: PGUSER: cognee POSTGRES_USER: cognee POSTGRES_PASSWORD: cognee POSTGRES_DB: cognee_db run: | echo "Waiting for PostgreSQL to be ready..." until pg_isready -h localhost -p 5432 -U cognee; do sleep 1 done - name: Run tests run: poetry run pytest tests/ - name: Run default basic pipeline env: ENV: 'dev' LLM_API_KEY: ${{ secrets.OPENAI_API_KEY }} DB_HOST: localhost DB_USERNAME: cognee DB_PASSWORD: cognee DB_DATABASE: cognee_db DB_PORT: 5432 run: poetry run python ./cognee/tests/test_library.py - name: Clean up disk space run: | sudo rm -rf ~/.cache sudo rm -rf /tmp/* df -h - name: Build with Poetry run: poetry build - name: Install Package run: | cd dist pip install *.whl