Merge pull request 'chore(ci): consolidate uv cache key across all workflow jobs' (#1644)

Consolidates all per-job uv cache key prefixes across CI workflow files into a single shared key, eliminating redundant package downloads. Also adds missing uv cache steps to the build job and nightly-quality.yml.

Closes #1535
This commit is contained in:
2026-04-03 01:07:33 +00:00
committed by Forgejo
2 changed files with 32 additions and 16 deletions
+24 -16
View File
@@ -31,9 +31,9 @@ jobs:
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-lint-${{ hashFiles('pyproject.toml') }}
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-lint-
uv-
- name: Run lint via nox
run: |
@@ -66,9 +66,9 @@ jobs:
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-typecheck-${{ hashFiles('pyproject.toml') }}
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-typecheck-
uv-
- name: Run typecheck via nox
run: |
@@ -95,9 +95,9 @@ jobs:
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-security-${{ hashFiles('pyproject.toml') }}
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-security-
uv-
- name: Run security scan via nox
run: |
@@ -130,9 +130,9 @@ jobs:
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-quality-${{ hashFiles('pyproject.toml') }}
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-quality-
uv-
- name: Run complexity check via nox
run: |
@@ -172,9 +172,9 @@ jobs:
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-tests-${{ hashFiles('pyproject.toml') }}
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-tests-
uv-
- name: Run unit tests via nox
run: |
@@ -214,9 +214,9 @@ jobs:
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-tests-${{ hashFiles('pyproject.toml') }}
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-tests-
uv-
- name: Run integration tests via nox
run: |
@@ -251,9 +251,9 @@ jobs:
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-tests-${{ hashFiles('pyproject.toml') }}
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-tests-
uv-
- name: Run E2E tests via nox
run: |
@@ -284,9 +284,9 @@ jobs:
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-coverage-${{ hashFiles('pyproject.toml') }}
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-coverage-
uv-
- name: Run coverage report via nox (fail-under 97%)
id: coverage
@@ -460,6 +460,14 @@ jobs:
run: |
pip install -q uv==${{ env.UV_VERSION }} nox
- name: Cache uv packages
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-
- name: Build wheel via nox
run: |
nox -s build
+8
View File
@@ -28,6 +28,14 @@ jobs:
run: |
pip install -q uv==${{ env.UV_VERSION }}
- name: Cache uv packages
uses: actions/cache@v3
with:
path: ~/.cache/uv
key: uv-${{ hashFiles('pyproject.toml') }}
restore-keys: |
uv-
- name: Install all dependencies
run: |
uv pip install --system -e ".[dev,tests]"