pre-commit autoupdate #849
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: Tests | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
merge_group: | |
workflow_dispatch: | |
schedule: | |
- cron: "20 4 * * 2" # once a week | |
env: | |
FORCE_COLOR: "1" | |
# facilitate testing by building vLLM for CPU when needed | |
VLLM_CPU_DISABLE_AVX512: "true" | |
VLLM_TARGET_DEVICE: "cpu" | |
# prefer index for torch cpu version | |
UV_EXTRA_INDEX_URL: "https://download.pytorch.org/whl/cpu" | |
# have uv match pip's behaviour for extra index operations | |
UV_INDEX_STRATEGY: "unsafe-best-match" | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
tests: | |
timeout-minutes: 20 | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest] | |
pyv: ["3.12"] | |
vllm_version: | |
# - "" # skip the pypi version as it will not work on CPU | |
- "git+https://github.com/vllm-project/vllm@v0.6.6.post1" | |
- "git+https://github.com/vllm-project/vllm@main" | |
- "git+https://github.com/opendatahub-io/vllm@main" | |
steps: | |
- name: Check out the repository | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Free Disk Space | |
uses: jlumbroso/free-disk-space@v1.3.1 | |
with: | |
tool-cache: false | |
large-packages: false | |
docker-images: false | |
- name: Install vLLM build deps | |
run: | | |
sudo apt update | |
sudo apt install --no-install-recommends -y \ | |
ccache \ | |
libnuma-dev libdnnl-dev opencl-dev | |
- name: Install the latest version of uv | |
uses: astral-sh/setup-uv@v5 | |
with: | |
version: "latest" | |
python-version: ${{ matrix.pyv }} | |
enable-cache: true | |
cache-dependency-glob: | | |
pyproject.toml | |
- name: Install nox | |
run: | | |
uv pip install nox | |
- name: nox envs cache | |
id: cache | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/.nox | |
key: ${{ runner.os }}-python-${{steps.setup-python.outputs.python-version }}-${{ hashFiles('noxfile.py') }} | |
- name: Lint code and check dependencies | |
run: nox --envdir ~/.nox --reuse-venv=yes -v -s lint-${{ matrix.pyv }} | |
- name: Cache ccache cache directory | |
id: cache-ccache | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/.cache/ccache | |
key: ${{ runner.os }} | |
- name: Run tests | |
run: nox --envdir ~/.nox --reuse-venv=yes -v -s tests-${{ matrix.pyv }} -- --cov-report=xml | |
env: | |
VLLM_VERSION_OVERRIDE: ${{ matrix.vllm_version }} | |
- name: Upload coverage report | |
uses: codecov/codecov-action@v4 | |
if: github.actor != 'dependabot[bot]' | |
with: | |
fail_ci_if_error: true | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
- name: Build package | |
run: nox --envdir ~/.nox --reuse-venv=yes -s build-${{ matrix.pyv }} |