Install uv
with cURL
instead
#2
This file contains 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: Test with minimum dependencies | |
on: | |
# Temporarily included `workflow_dispatch` to trigger it manually | |
# to ensure that everything's working fine | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
- develop | |
- uv-in-ci | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.8", "3.9", "3.10", "3.11"] | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
# Looks like it's not working very well for other people: | |
# https://github.com/actions/setup-python/issues/436 | |
# cache: "pip" | |
# cache-dependency-path: pyproject.toml | |
- uses: actions/cache@v4 | |
id: cache | |
with: | |
path: ${{ env.pythonLocation }} | |
key: ${{ runner.os }}-python-${{ env.pythonLocation }}-${{ hashFiles('pyproject.toml') }}-test-min | |
- name: Install dependencies | |
if: steps.cache.outputs.cache-hit != 'true' | |
run: | | |
curl -LsSf https://astral.sh/uv/install.sh | sh | |
python_version=$(python -c "import sys; print(sys.version_info[:2])") | |
uv pip install --system --resolution lowest -e .[dev,tests,anthropic,argilla,cohere,groq,hf-inference-endpoints,hf-transformers,litellm,llama-cpp,ollama,openai,outlines,vertexai,vllm] | |
if [ "${python_version}" != "(3, 8)" ]; then | |
uv pip install --system --resolution lowest -e .[mistralai,instructor] | |
fi; | |
# Here we don't use the `--resolution=lowest` flag because we had issues | |
# in the past with LLM-Blender, that's why we're also using a custom fork | |
uv pip install --system git+https://github.com/argilla-io/LLM-Blender.git | |
- name: Lint | |
run: make lint | |
- name: Unit Tests | |
run: make unit-tests | |
- name: Integration Tests | |
run: make integration-tests | |
timeout-minutes: 5 | |