Use "uv" for building virtual environments

Change-Id: I5e24e82e6347d351cac71255904b44aa558d449b
(cherry picked from commit 4e2d8ac7928cb95aadbd0587230837281827976a)
diff --git a/images/heat/Dockerfile b/images/heat/Dockerfile
index 9730a4c..818b3a1 100644
--- a/images/heat/Dockerfile
+++ b/images/heat/Dockerfile
@@ -6,8 +6,8 @@
 ARG HEAT_GIT_REF=64bdbb9bc66c38760989dd7bb2574ccc14069872
 ADD --keep-git-dir=true https://opendev.org/openstack/heat.git#${HEAT_GIT_REF} /src/heat
 RUN git -C /src/heat fetch --unshallow
-RUN --mount=type=cache,mode=0755,target=/root/.cache/pip,sharing=private <<EOF bash -xe
-pip3 install \
+RUN --mount=type=cache,target=/root/.cache/uv <<EOF bash -xe
+uv pip install \
     --constraint /upper-constraints.txt \
         /src/heat
 EOF