You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I see two options to achieve this with the existing functionality:
Option 1 - Populate cache job
Run a job which uses setup-uv and calls uv sync --all-extras. Make all other jobs you mention above dependant on that job so you know the full cache is available.
Option 2 - Upload distinct caches per dependency group "set"
Use cache-suffix to add a unique identifier for each sets of dependencies included in the up-/downloaded cache.
Option 2 is what I currently use, but it causes a lot of distinct cache entries.
Option 1 I was trying to avoid so far - there are a lot of large dependencies, and even with uv and caching, it takes some time to sync them. I'll see whether I can somehow refactor it so one of the tests always runs first, unless I can come up with a better idea
Is it possible to use an existing cache entry, if a matching one exist, but not upload any at the end, if there is none?
My use case:
so for each matrix test, only certain dependencies are included with
uv sync --extra ....
I want to cache only the version with all dependencies.
But depending on which workflow finishes first, after the lock file changes, that workflow's subset of features will be uploaded
I could of course execute
uv sync --all-extras
after the tests, but that seems wasteful.Is there a way to disable uploading the new cache for specific cases?
The text was updated successfully, but these errors were encountered: