mirror of
https://github.com/home-assistant/core.git
synced 2025-07-29 16:17:20 +00:00
Update Dockerfile.dev to only use uv for Python (#147926)
This commit is contained in:
parent
3730a1a379
commit
b2108fdd40
@ -1,15 +1,7 @@
|
|||||||
FROM mcr.microsoft.com/devcontainers/python:1-3.13
|
FROM mcr.microsoft.com/vscode/devcontainers/base:debian
|
||||||
|
|
||||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||||
|
|
||||||
# Uninstall pre-installed formatting and linting tools
|
|
||||||
# They would conflict with our pinned versions
|
|
||||||
RUN \
|
|
||||||
pipx uninstall pydocstyle \
|
|
||||||
&& pipx uninstall pycodestyle \
|
|
||||||
&& pipx uninstall mypy \
|
|
||||||
&& pipx uninstall pylint
|
|
||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
@ -32,21 +24,18 @@ RUN \
|
|||||||
libxml2 \
|
libxml2 \
|
||||||
git \
|
git \
|
||||||
cmake \
|
cmake \
|
||||||
|
autoconf \
|
||||||
&& apt-get clean \
|
&& apt-get clean \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# Add go2rtc binary
|
# Add go2rtc binary
|
||||||
COPY --from=ghcr.io/alexxit/go2rtc:latest /usr/local/bin/go2rtc /bin/go2rtc
|
COPY --from=ghcr.io/alexxit/go2rtc:latest /usr/local/bin/go2rtc /bin/go2rtc
|
||||||
|
|
||||||
# Install uv
|
|
||||||
RUN pip3 install uv
|
|
||||||
|
|
||||||
WORKDIR /usr/src
|
WORKDIR /usr/src
|
||||||
|
|
||||||
# Setup hass-release
|
COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv
|
||||||
RUN git clone --depth 1 https://github.com/home-assistant/hass-release \
|
|
||||||
&& uv pip install --system -e hass-release/ \
|
RUN uv python install 3.13.2
|
||||||
&& chown -R vscode /usr/src/hass-release/data
|
|
||||||
|
|
||||||
USER vscode
|
USER vscode
|
||||||
ENV VIRTUAL_ENV="/home/vscode/.local/ha-venv"
|
ENV VIRTUAL_ENV="/home/vscode/.local/ha-venv"
|
||||||
@ -55,6 +44,10 @@ ENV PATH="$VIRTUAL_ENV/bin:$PATH"
|
|||||||
|
|
||||||
WORKDIR /tmp
|
WORKDIR /tmp
|
||||||
|
|
||||||
|
# Setup hass-release
|
||||||
|
RUN git clone --depth 1 https://github.com/home-assistant/hass-release ~/hass-release \
|
||||||
|
&& uv pip install -e ~/hass-release/
|
||||||
|
|
||||||
# Install Python dependencies from requirements
|
# Install Python dependencies from requirements
|
||||||
COPY requirements.txt ./
|
COPY requirements.txt ./
|
||||||
COPY homeassistant/package_constraints.txt homeassistant/package_constraints.txt
|
COPY homeassistant/package_constraints.txt homeassistant/package_constraints.txt
|
||||||
@ -65,4 +58,4 @@ RUN uv pip install -r requirements_test.txt
|
|||||||
WORKDIR /workspaces
|
WORKDIR /workspaces
|
||||||
|
|
||||||
# Set the default shell to bash instead of sh
|
# Set the default shell to bash instead of sh
|
||||||
ENV SHELL /bin/bash
|
ENV SHELL=/bin/bash
|
||||||
|
Loading…
x
Reference in New Issue
Block a user