Skip to content

batch import

batch import #134

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
test:
name: Test (Python ${{ matrix.python-version }})
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.11", "3.12"]
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v4
- name: Set up Python ${{ matrix.python-version }}
run: uv python install ${{ matrix.python-version }}
- name: Install dependencies
run: uv venv && uv pip install -e ".[dev]"
- name: Run tests
run: uv run pytest tests/ -v --tb=short
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v4
- name: Set up Python
run: uv python install 3.12
- name: Install dependencies
run: uv venv && uv pip install -e ".[dev]" ruff
- name: Run ruff
run: uv run ruff check src/ tests/
matrix:
name: Full Suite + Domain x Framework Matrix
runs-on: ubuntu-latest
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v4
- name: Set up Python
run: uv python install 3.12
- name: Install dependencies
run: uv venv && uv pip install -e ".[dev]"
- name: Run full test suite with slow tests (matrix + performance)
run: uv run pytest tests/ -v --tb=short --slow
smoke-test:
name: E2E Smoke Test (${{ matrix.test.framework }})
runs-on: ubuntu-latest
needs: test
if: >
github.event_name == 'push' && github.ref == 'refs/heads/main'
&& vars.SMOKE_TESTS_ENABLED == 'true'
strategy:
fail-fast: false
matrix:
test:
- { domain: "financial-services", framework: "pydanticai" }
- { domain: "real-estate", framework: "google-adk" }
- { domain: "trip-planning", framework: "strands" }
- { domain: "healthcare", framework: "claude-agent-sdk" }
- { domain: "gaming", framework: "openai-agents" }
- { domain: "manufacturing", framework: "crewai" }
- { domain: "conservation", framework: "anthropic-tools" }
- { domain: "data-journalism", framework: "langgraph" }
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v4
- name: Set up Python
run: uv python install 3.12
- name: Install dependencies
run: uv venv && uv pip install -e ".[all,dev]"
- name: Run integration tests
env:
NEO4J_URI: ${{ secrets.NEO4J_URI }}
NEO4J_USERNAME: ${{ secrets.NEO4J_USERNAME }}
NEO4J_PASSWORD: ${{ secrets.NEO4J_PASSWORD }}
run: uv run pytest tests/test_integration.py --integration -v --tb=short
- name: Run smoke test
env:
NEO4J_URI: ${{ secrets.NEO4J_URI }}
NEO4J_USERNAME: ${{ secrets.NEO4J_USERNAME }}
NEO4J_PASSWORD: ${{ secrets.NEO4J_PASSWORD }}
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
run: >
uv run python scripts/e2e_smoke_test.py
--domain ${{ matrix.test.domain }}
--framework ${{ matrix.test.framework }}
--quick