name: Reusable Basic Tests on: workflow_call: inputs: python-version: required: false type: string default: '3.11.x' ci-image: required: false type: string default: '' secrets: LLM_PROVIDER: required: true LLM_MODEL: required: true LLM_ENDPOINT: required: true LLM_API_KEY: required: true LLM_ARGS: required: false LLM_API_VERSION: required: true EMBEDDING_PROVIDER: required: true EMBEDDING_MODEL: required: true EMBEDDING_API_KEY: required: true env: RUNTIME__LOG_LEVEL: ERROR ENV: 'dev' COGNEE_SKIP_CONNECTION_TEST: 'true' jobs: unit-tests: name: Run Unit Tests runs-on: ubuntu-22.04 container: ${{ inputs.ci-image != '' && fromJSON(format('{{"image":"{0}","credentials":{{"username":"{1}","password":"{2}"}}}}', inputs.ci-image, github.actor, github.token)) || null }} env: ENV: 'dev' LLM_PROVIDER: openai LLM_MODEL: ${{ secrets.LLM_MODEL }} LLM_ENDPOINT: ${{ secrets.LLM_ENDPOINT }} LLM_API_KEY: ${{ secrets.LLM_API_KEY }} LLM_ARGS: ${{ secrets.LLM_ARGS }} LLM_API_VERSION: ${{ secrets.LLM_API_VERSION }} EMBEDDING_PROVIDER: openai EMBEDDING_MODEL: ${{ secrets.EMBEDDING_MODEL }} EMBEDDING_DIMENSIONS: 300 EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }} steps: - name: Check out repository uses: actions/checkout@v6 with: fetch-depth: 0 - name: Cognee Setup uses: ./.github/actions/cognee_setup with: python-version: ${{ inputs.python-version }} - name: Run Unit Tests run: uv run pytest cognee/tests/unit/ --timeout=300 --timeout-method=thread simple-examples: name: Run Simple Examples runs-on: ubuntu-22.04 container: ${{ inputs.ci-image != '' && fromJSON(format('{{"image":"{0}","credentials":{{"username":"{1}","password":"{2}"}}}}', inputs.ci-image, github.actor, github.token)) || null }} env: ENV: 'dev' LLM_PROVIDER: openai LLM_MODEL: ${{ secrets.LLM_MODEL }} LLM_ENDPOINT: ${{ secrets.LLM_ENDPOINT }} LLM_API_KEY: ${{ secrets.LLM_API_KEY }} LLM_ARGS: ${{ secrets.LLM_ARGS }} LLM_API_VERSION: ${{ secrets.LLM_API_VERSION }} EMBEDDING_PROVIDER: openai EMBEDDING_DIMENSIONS: 300 EMBEDDING_MODEL: ${{ secrets.EMBEDDING_MODEL }} EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }} steps: - name: Check out repository uses: actions/checkout@v6 with: fetch-depth: 0 - name: Cognee Setup uses: ./.github/actions/cognee_setup with: python-version: ${{ inputs.python-version }} - name: Run Simple Examples run: uv run python ./examples/demos/simple_cognee_example.py simple-examples-baml: name: Run Simple Examples BAML runs-on: ubuntu-22.04 container: ${{ inputs.ci-image != '' && fromJSON(format('{{"image":"{0}","credentials":{{"username":"{1}","password":"{2}"}}}}', inputs.ci-image, github.actor, github.token)) || null }} env: ENV: 'dev' STRUCTURED_OUTPUT_FRAMEWORK: "BAML" BAML_LLM_PROVIDER: openai BAML_LLM_MODEL: ${{ secrets.OPENAI_MODEL }} BAML_LLM_ENDPOINT: ${{ secrets.OPENAI_ENDPOINT }} BAML_LLM_API_KEY: ${{ secrets.OPENAI_API_KEY }} # BAML_LLM_API_VERSION: ${{ secrets.LLM_API_VERSION }} LLM_PROVIDER: openai LLM_MODEL: ${{ secrets.LLM_MODEL }} LLM_ENDPOINT: ${{ secrets.LLM_ENDPOINT }} LLM_API_KEY: ${{ secrets.LLM_API_KEY }} LLM_ARGS: ${{ secrets.LLM_ARGS }} LLM_API_VERSION: ${{ secrets.LLM_API_VERSION }} EMBEDDING_PROVIDER: openai EMBEDDING_DIMENSIONS: 300 EMBEDDING_MODEL: ${{ secrets.EMBEDDING_MODEL }} EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }} steps: - name: Check out repository uses: actions/checkout@v6 with: fetch-depth: 0 - name: Cognee Setup uses: ./.github/actions/cognee_setup with: python-version: ${{ inputs.python-version }} extra-dependencies: "baml" - name: Run Simple Examples run: uv run python ./examples/demos/simple_cognee_example.py