Skip to content

Fix breaking changes from databricks-ai-bridge 0.4.2 #482

Fix breaking changes from databricks-ai-bridge 0.4.2

Fix breaking changes from databricks-ai-bridge 0.4.2 #482

Workflow file for this run

name: tests
on:
push:
branches:
- master
pull_request:
types:
- opened
- synchronize
- reopened
- ready_for_review
workflow_dispatch:
jobs:
lint:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.9"
- name: Install dependencies
run: |
pip install -r requirements/lint-requirements.txt
- name: Lint Python code with ruff
run: |
ruff check .
ruff format --check .
core_test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9", "3.10"]
timeout-minutes: 20
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
pip install .[dev]
- name: Run tests
run: |
pytest tests/
langchain_test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.10"]
databricks-langchain-version: ["0.1.0", "0.2.0", "0.3.0", "0.4.0", "dev"] # Include whatever past versions you need
timeout-minutes: 20
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install core package
run: |
pip install .[dev]
# Cache the downloaded and extracted langchain package
- name: Cache langchain package
id: cache-langchain
uses: actions/cache@v3
with:
path: /tmp/langchain-tests/databricks-langchain-${{ matrix.databricks-langchain-version }}
key: ${{ runner.os }}-langchain-${{ matrix.databricks-langchain-version }}-v1
- name: Download specific langchain version tests
run: |
# Create temp directory for tests
mkdir -p /tmp/langchain-tests
cd /tmp/langchain-tests
# Download the package
pip download databricks-langchain==${{ matrix.databricks-langchain-version }} --no-deps --no-binary=:all:
# Extract it
tar -xzf databricks-langchain-${{ matrix.databricks-langchain-version }}.tar.gz
- name: Install test dependencies
run: |
cd /tmp/langchain-tests/databricks-langchain-${{ matrix.databricks-langchain-version }}
pip install pytest pytest-cov
# Install remaining dependencies (excluding ai-bridge which we have from our PR)
if [ -f requirements.txt ]; then
grep -v "databricks-ai-bridge" requirements.txt > filtered_requirements.txt
pip install -r filtered_requirements.txt
fi
- name: Run databricks-langchain tests
run: |
cd /tmp/langchain-tests/databricks-langchain-${{ matrix.databricks-langchain-version }}
python -m pytest tests -v
openai_test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.10"]
timeout-minutes: 20
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
pip install .
pip install integrations/openai[dev]
- name: Run tests
run: |
pytest integrations/openai/tests/unit_tests
llamaindex_test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.10"]
timeout-minutes: 20
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
pip install .
pip install integrations/llamaindex[dev]
- name: Run tests
run: |
pytest integrations/llamaindex/tests/unit_tests