mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-04-20 03:07:17 +00:00

* Use find to delete files recursively Instead of using rm -rf use find to delete files recursively. This has the added benefit that we do not need to rely on shell expansion. In particular, shell expansion caused the --one-file-system flag to not work as intended: The idea was that the content of a (left-over) bind mounted directory would not get deleted. However, since shell expansion passed the directory to rm, rm happily deleted also files in that bind mounted directory. * Pass arguments correctly * Fix argument order and stderr output * Improve error handling Log with exception level if there is an OS level error. Decode the stderr output correctly. * Remove unnecessary newline
48 lines
971 B
Docker
48 lines
971 B
Docker
ARG BUILD_FROM
|
|
FROM ${BUILD_FROM}
|
|
|
|
ENV \
|
|
S6_SERVICES_GRACETIME=10000 \
|
|
SUPERVISOR_API=http://localhost \
|
|
CRYPTOGRAPHY_OPENSSL_NO_LEGACY=1
|
|
|
|
ARG \
|
|
COSIGN_VERSION \
|
|
BUILD_ARCH
|
|
|
|
# Install base
|
|
WORKDIR /usr/src
|
|
RUN \
|
|
set -x \
|
|
&& apk add --no-cache \
|
|
findutils \
|
|
eudev \
|
|
eudev-libs \
|
|
git \
|
|
libffi \
|
|
libpulse \
|
|
musl \
|
|
openssl \
|
|
yaml \
|
|
\
|
|
&& curl -Lso /usr/bin/cosign "https://github.com/home-assistant/cosign/releases/download/${COSIGN_VERSION}/cosign_${BUILD_ARCH}" \
|
|
&& chmod a+x /usr/bin/cosign
|
|
|
|
# Install requirements
|
|
COPY requirements.txt .
|
|
RUN \
|
|
export MAKEFLAGS="-j$(nproc)" \
|
|
&& pip3 install --only-binary=:all: \
|
|
-r ./requirements.txt \
|
|
&& rm -f requirements.txt
|
|
|
|
# Install Home Assistant Supervisor
|
|
COPY . supervisor
|
|
RUN \
|
|
pip3 install -e ./supervisor \
|
|
&& python3 -m compileall ./supervisor/supervisor
|
|
|
|
|
|
WORKDIR /
|
|
COPY rootfs /
|