Fix breaking changes from databricks-ai-bridge 0.4.2 #482
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 |