-
Notifications
You must be signed in to change notification settings - Fork 163
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
344b336
commit 48d4769
Showing
1 changed file
with
65 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
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 | ||
|
||
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: | | ||
python_version=$(python -c "import sys; print(sys.version_info[:2])") | ||
pip install uv | ||
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 | ||
|