43 lines
1.3 KiB
Docker
43 lines
1.3 KiB
Docker
FROM mcr.microsoft.com/vscode/devcontainers/python:0-3.9
|
|
|
|
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
|
|
|
RUN \
|
|
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
|
&& apt-get update \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
|
# Additional library needed by some tests and accordingly by VScode Tests Discovery
|
|
bluez \
|
|
libudev-dev \
|
|
libavformat-dev \
|
|
libavcodec-dev \
|
|
libavdevice-dev \
|
|
libavutil-dev \
|
|
libswscale-dev \
|
|
libswresample-dev \
|
|
libavfilter-dev \
|
|
libpcap-dev \
|
|
libturbojpeg0 \
|
|
git \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
WORKDIR /usr/src
|
|
|
|
# Setup hass-release
|
|
RUN git clone --depth 1 https://github.com/home-assistant/hass-release \
|
|
&& pip3 install -e hass-release/
|
|
|
|
WORKDIR /workspaces
|
|
|
|
# Install Python dependencies from requirements
|
|
COPY requirements.txt ./
|
|
COPY homeassistant/package_constraints.txt homeassistant/package_constraints.txt
|
|
RUN pip3 install -r requirements.txt
|
|
COPY requirements_test.txt requirements_test_pre_commit.txt ./
|
|
RUN pip3 install -r requirements_test.txt
|
|
RUN rm -rf requirements.txt requirements_test.txt requirements_test_pre_commit.txt homeassistant/
|
|
|
|
# Set the default shell to bash instead of sh
|
|
ENV SHELL /bin/bash
|