* update changelog * add addon-dev target * initial version * use prebuild docker image * initial version for multi arch images * fix missing label latest * create log and config folder first. * clean up and translate to english * set labels with docker bake * add addon-debug and addon-dev targets * pass version number to proxy at runtime * add two more callbacks * get addon version from app * deploy rc addon container to ghcr * move ha_addon test into subdir * fix crash on container restart - mkdir -p returns no error even if the director exists * prepation for unit testing - move script into a method * added further config to schema * typo fixed * added monitor_sn + PV-strings 3-6 to create toml * added options.json for testing * prepare pytest and coverage for addons * fix missing values in resulting config.toml - define mqtt default values - convert filter configuration * first running unittest for addons * add ha_addons * increase test coverage * test empty options.json file for HA AddOn * fix pytest call in terminal * improve test coverage * remove uneeded options.json * move config.py into subdir cnf --------- Co-authored-by: Michael Metz <michael.metz@siemens.com>
88 lines
1.5 KiB
Docker
Executable File
88 lines
1.5 KiB
Docker
Executable File
|
|
############################################################################
|
|
#
|
|
# TSUN Proxy
|
|
# Homeassistant Add-on
|
|
#
|
|
# based on https://github.com/s-allius/tsun-gen3-proxy/tree/main
|
|
#
|
|
############################################################################
|
|
|
|
|
|
######################
|
|
# 1 Build Image #
|
|
######################
|
|
|
|
ARG BUILD_FROM="ghcr.io/hassio-addons/base:stable"
|
|
FROM $BUILD_FROM
|
|
|
|
|
|
#######################
|
|
# 2 Modify Image #
|
|
#######################
|
|
|
|
|
|
|
|
|
|
#######################
|
|
# 3 Install apps #
|
|
#######################
|
|
|
|
|
|
|
|
# Installiere Python, pip und virtuelle Umgebungstools
|
|
RUN apk add --no-cache python3 py3-pip py3-virtualenv
|
|
|
|
# Erstelle ein virtuelles Umfeld und aktiviere es
|
|
RUN python3 -m venv /opt/venv
|
|
|
|
RUN . /opt/venv/bin/activate
|
|
|
|
# Stelle sicher, dass das Add-on das virtuelle Umfeld nutzt
|
|
ENV PATH="/opt/venv/bin:$PATH"
|
|
|
|
|
|
|
|
#######################
|
|
# 4 Install libraries #
|
|
#######################
|
|
|
|
|
|
# Kopiere die requirements.txt Datei in das Image
|
|
COPY rootfs/requirements.txt /tmp/requirements.txt
|
|
|
|
# installiere die Pakete aus requirements.txt
|
|
RUN pip install --no-cache-dir -r /tmp/requirements.txt
|
|
|
|
|
|
#######################
|
|
# 5 copy data #
|
|
#######################
|
|
|
|
|
|
# Add rootfs
|
|
COPY rootfs/ /
|
|
|
|
# make run.sh executable
|
|
RUN chmod a+x /run.sh
|
|
|
|
|
|
|
|
#######################
|
|
# 6 run app #
|
|
#######################
|
|
|
|
ARG SERVICE_NAME
|
|
ARG VERSION
|
|
ENV SERVICE_NAME=${SERVICE_NAME}
|
|
|
|
RUN echo ${VERSION} > /proxy-version.txt
|
|
|
|
# command to run on container start
|
|
CMD [ "/run.sh" ]
|
|
|
|
|
|
|
|
#######################
|
|
|