Files
esphome/.github/workflows
J. Nick Koston 6d62b3af5f [ci] Use uv for pip installs across CI workflows
Follow-up to #16449 / #16448, extending the uv switch to the workflows
that actually dominate CI cost (every push + every PR):

* ``.github/actions/restore-python`` -- the composite action invoked by
  almost every downstream job as the venv cache-miss fallback. Installs
  setup-uv only when the venv cache misses and swaps ``pip install``
  for ``uv pip install`` (no ``--system``: ``VIRTUAL_ENV`` is set by the
  activate step, so installs land in the venv that downstream jobs
  expect to ``. venv/bin/activate``).

* ``.github/workflows/ci.yml`` ``common`` job -- the canonical venv
  builder whose cache feeds the rest of the workflow.

* ``.github/workflows/ci.yml`` ``integration-tests`` job -- has its
  own venv create path on cache miss for the 3.13 matrix entry.

* ``.github/workflows/ci-api-proto.yml`` -- single ``pip install``
  step; uses ``uv pip install --system`` since this workflow does not
  set up or restore a venv.

All four call sites use ``astral-sh/setup-uv@v8.1.0`` (SHA-pinned) with
``enable-cache: true`` for a persistent wheel cache across runs.

Cache-hit paths are unchanged -- setup-uv only runs on cache miss for
the venv-restoring jobs, so steady-state behavior matches today.
2026-05-15 09:53:27 -07:00
..