refactor: Make CI/CD faster add more OS tests
This commit is contained in:
parent
8c69653912
commit
65542ecec7
3 changed files with 96 additions and 36 deletions
25
.github/workflows/e2e_tests.yml
vendored
25
.github/workflows/e2e_tests.yml
vendored
|
|
@ -153,31 +153,6 @@ jobs:
|
||||||
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
||||||
run: uv run python ./cognee/tests/test_deduplication.py
|
run: uv run python ./cognee/tests/test_deduplication.py
|
||||||
|
|
||||||
run-deletion-test:
|
|
||||||
name: Deletion Test
|
|
||||||
runs-on: ubuntu-22.04
|
|
||||||
steps:
|
|
||||||
- name: Check out
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Cognee Setup
|
|
||||||
uses: ./.github/actions/cognee_setup
|
|
||||||
with:
|
|
||||||
python-version: '3.11.x'
|
|
||||||
|
|
||||||
- name: Run Deletion Tests
|
|
||||||
env:
|
|
||||||
ENV: 'dev'
|
|
||||||
LLM_API_KEY: ${{ secrets.OPENAI_API_KEY }} # Test needs OpenAI endpoint to handle multimedia
|
|
||||||
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
|
|
||||||
EMBEDDING_MODEL: ${{ secrets.EMBEDDING_MODEL }}
|
|
||||||
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
|
|
||||||
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
|
|
||||||
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
|
||||||
run: uv run python ./cognee/tests/test_deletion.py
|
|
||||||
|
|
||||||
run-s3-bucket-test:
|
run-s3-bucket-test:
|
||||||
name: S3 Bucket Test
|
name: S3 Bucket Test
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
name: Reusable Python Version Tests
|
name: Tests to run on different Operating Systems
|
||||||
|
|
||||||
on:
|
on:
|
||||||
workflow_call:
|
workflow_call:
|
||||||
|
|
@ -34,13 +34,13 @@ env:
|
||||||
ENV: 'dev'
|
ENV: 'dev'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
run-python-version-tests:
|
run-unit-tests:
|
||||||
name: Python ${{ matrix.python-version }} on ${{ matrix.os }}
|
name: Unit tests ${{ matrix.python-version }} on ${{ matrix.os }}
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
python-version: ${{ fromJSON(inputs.python-versions) }}
|
python-version: ${{ fromJSON(inputs.python-versions) }}
|
||||||
os: [ubuntu-22.04, macos-13, macos-15]
|
os: [ubuntu-22.04, macos-13, macos-15, windows-latest]
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
steps:
|
steps:
|
||||||
- name: Check out
|
- name: Check out
|
||||||
|
|
@ -69,6 +69,24 @@ jobs:
|
||||||
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
|
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
|
||||||
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
|
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
|
||||||
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
||||||
|
run-integration-tests:
|
||||||
|
name: Integration tests ${{ matrix.python-version }} on ${{ matrix.os }}
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
python-version: ${{ fromJSON(inputs.python-versions) }}
|
||||||
|
os: [ ubuntu-22.04, macos-13, macos-15, windows-latest ]
|
||||||
|
fail-fast: false
|
||||||
|
steps:
|
||||||
|
- name: Check out
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Cognee Setup
|
||||||
|
uses: ./.github/actions/cognee_setup
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
|
||||||
- name: Run integration tests
|
- name: Run integration tests
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|
@ -87,6 +105,25 @@ jobs:
|
||||||
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
|
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
|
||||||
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
||||||
|
|
||||||
|
run-library-test:
|
||||||
|
name: Library test ${{ matrix.python-version }} on ${{ matrix.os }}
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
python-version: ${{ fromJSON(inputs.python-versions) }}
|
||||||
|
os: [ ubuntu-22.04, macos-13, macos-15, windows-latest ]
|
||||||
|
fail-fast: false
|
||||||
|
steps:
|
||||||
|
- name: Check out
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Cognee Setup
|
||||||
|
uses: ./.github/actions/cognee_setup
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
|
||||||
- name: Run default basic pipeline
|
- name: Run default basic pipeline
|
||||||
shell: bash
|
shell: bash
|
||||||
env:
|
env:
|
||||||
|
|
@ -104,12 +141,60 @@ jobs:
|
||||||
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
||||||
run: uv run python ./cognee/tests/test_library.py
|
run: uv run python ./cognee/tests/test_library.py
|
||||||
|
|
||||||
|
run-build-test:
|
||||||
|
name: Build test ${{ matrix.python-version }} on ${{ matrix.os }}
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
python-version: ${{ fromJSON(inputs.python-versions) }}
|
||||||
|
os: [ ubuntu-22.04, macos-13, macos-15, windows-latest ]
|
||||||
|
fail-fast: false
|
||||||
|
steps:
|
||||||
|
- name: Check out
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Cognee Setup
|
||||||
|
uses: ./.github/actions/cognee_setup
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
|
||||||
- name: Build with uv
|
- name: Build with uv
|
||||||
shell: bash
|
shell: bash
|
||||||
run: uv build
|
run: uv build
|
||||||
|
|
||||||
- name: Install Package
|
- name: Install Package
|
||||||
if: ${{ !contains(matrix.os, 'windows') }}
|
|
||||||
run: |
|
run: |
|
||||||
cd dist
|
cd dist
|
||||||
pip install *.whl
|
pip install *.whl
|
||||||
|
|
||||||
|
run-deletion-test:
|
||||||
|
name: Deletion test ${{ matrix.python-version }} on ${{ matrix.os }}
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
python-version: ${{ fromJSON(inputs.python-versions) }}
|
||||||
|
os: [ ubuntu-22.04, macos-13, macos-15, windows-latest ]
|
||||||
|
fail-fast: false
|
||||||
|
steps:
|
||||||
|
- name: Check out
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Cognee Setup
|
||||||
|
uses: ./.github/actions/cognee_setup
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
|
||||||
|
- name: Run Deletion Tests
|
||||||
|
env:
|
||||||
|
ENV: 'dev'
|
||||||
|
LLM_API_KEY: ${{ secrets.OPENAI_API_KEY }} # Test needs OpenAI endpoint to handle multimedia
|
||||||
|
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
|
||||||
|
EMBEDDING_MODEL: ${{ secrets.EMBEDDING_MODEL }}
|
||||||
|
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
|
||||||
|
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
|
||||||
|
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
|
||||||
|
run: uv run python ./cognee/tests/test_deletion.py
|
||||||
12
.github/workflows/test_suites.yml
vendored
12
.github/workflows/test_suites.yml
vendored
|
|
@ -68,10 +68,10 @@ jobs:
|
||||||
uses: ./.github/workflows/notebooks_tests.yml
|
uses: ./.github/workflows/notebooks_tests.yml
|
||||||
secrets: inherit
|
secrets: inherit
|
||||||
|
|
||||||
python-version-tests:
|
different-operating-systems-tests:
|
||||||
name: Python Version Tests
|
name: Python Operating Systems Tests
|
||||||
needs: [basic-tests, e2e-tests, cli-tests]
|
needs: [basic-tests, e2e-tests, cli-tests]
|
||||||
uses: ./.github/workflows/python_version_tests.yml
|
uses: ./.github/workflows/test_different_operating_systems.yml
|
||||||
with:
|
with:
|
||||||
python-versions: '["3.10.x", "3.11.x", "3.12.x"]'
|
python-versions: '["3.10.x", "3.11.x", "3.12.x"]'
|
||||||
secrets: inherit
|
secrets: inherit
|
||||||
|
|
@ -124,7 +124,7 @@ jobs:
|
||||||
cli-tests,
|
cli-tests,
|
||||||
graph-db-tests,
|
graph-db-tests,
|
||||||
notebook-tests,
|
notebook-tests,
|
||||||
python-version-tests,
|
different-operating-systems-tests,
|
||||||
vector-db-tests,
|
vector-db-tests,
|
||||||
example-tests,
|
example-tests,
|
||||||
gemini-tests,
|
gemini-tests,
|
||||||
|
|
@ -144,7 +144,7 @@ jobs:
|
||||||
cli-tests,
|
cli-tests,
|
||||||
graph-db-tests,
|
graph-db-tests,
|
||||||
notebook-tests,
|
notebook-tests,
|
||||||
python-version-tests,
|
different-operating-systems-tests,
|
||||||
vector-db-tests,
|
vector-db-tests,
|
||||||
example-tests,
|
example-tests,
|
||||||
db-examples-tests,
|
db-examples-tests,
|
||||||
|
|
@ -165,7 +165,7 @@ jobs:
|
||||||
"${{ needs.cli-tests.result }}" == "success" &&
|
"${{ needs.cli-tests.result }}" == "success" &&
|
||||||
"${{ needs.graph-db-tests.result }}" == "success" &&
|
"${{ needs.graph-db-tests.result }}" == "success" &&
|
||||||
"${{ needs.notebook-tests.result }}" == "success" &&
|
"${{ needs.notebook-tests.result }}" == "success" &&
|
||||||
"${{ needs.python-version-tests.result }}" == "success" &&
|
"${{ needs.different-operating-systems-tests.result }}" == "success" &&
|
||||||
"${{ needs.vector-db-tests.result }}" == "success" &&
|
"${{ needs.vector-db-tests.result }}" == "success" &&
|
||||||
"${{ needs.example-tests.result }}" == "success" &&
|
"${{ needs.example-tests.result }}" == "success" &&
|
||||||
"${{ needs.db-examples-tests.result }}" == "success" &&
|
"${{ needs.db-examples-tests.result }}" == "success" &&
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue