chore: use uv caches (#32919)

Especially helpful for the text splitters tests where we're installing
pytorch (expensive and slow slow slow). Should speed up CI by 5-10 mins.

w/o caches, CI taking 20 minutes 😨 
w/ caches, CI taking 3 minutes
This commit is contained in:
Sydney Runkle
2025-09-12 10:29:35 -04:00
committed by GitHub
parent 0814bfe5ed
commit 84f9824cc9
9 changed files with 37 additions and 4 deletions

View File

@@ -1,12 +1,22 @@
# TODO: https://docs.astral.sh/uv/guides/integration/github/#caching
name: uv-install
description: Set up Python and uv
description: Set up Python and uv with caching
inputs:
python-version:
description: Python version, supporting MAJOR.MINOR only
required: true
enable-cache:
description: Enable caching for uv dependencies
required: false
default: 'true'
cache-suffix:
description: Custom cache key suffix for cache invalidation
required: false
default: ''
working-directory:
description: Working directory for cache glob scoping
required: false
default: '**'
env:
UV_VERSION: "0.5.25"
@@ -15,7 +25,13 @@ runs:
using: composite
steps:
- name: Install uv and set the python version
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@v6
with:
version: ${{ env.UV_VERSION }}
python-version: ${{ inputs.python-version }}
enable-cache: ${{ inputs.enable-cache }}
cache-dependency-glob: |
${{ inputs.working-directory }}/pyproject.toml
${{ inputs.working-directory }}/uv.lock
${{ inputs.working-directory }}/requirements*.txt
cache-suffix: ${{ inputs.cache-suffix }}