5 Commits
1.0.2 ... 1.0.7

Author SHA1 Message Date
0eace0be7c env 2023-11-08 18:31:21 +01:00
88c442697f deployment added 2023-11-08 17:14:29 +01:00
c2053acee3 fix 2023-11-08 17:12:22 +01:00
827ebdadad fix 2023-11-08 14:55:05 +01:00
3d28188833 fix 2023-11-08 14:49:48 +01:00
4 changed files with 13 additions and 7 deletions

View File

@ -2,11 +2,17 @@ FROM python:latest
LABEL Maintainer="Wolfgang Hottgenroth wolfgang.hottgenroth@icloud.com"
LABEL ImageName="registry.hottis.de/dockerized/pv-controller"
LABEL HubImageName="wollud1969/pv-controller"
ARG APP_DIR="/opt/app"
ARG CONF_DIR="${APP_DIR}/config"
ENV MQTT__BROKER ""
ENV MQTT__PORT "1883"
ENV MQTT__METERPUBLISHTOPIC "IoT/PV/Values"
ENV MQTT__METERPUBLISHPERIOD "15"
ENV MQTT__RELAISSUBSCRIBETOPIC "IoT/PV/Cmd"
ENV MODBUS__GATEWAY ""
RUN \
apt update && \
@ -20,14 +26,12 @@ RUN \
useradd -d ${APP_DIR} -u 1000 user
COPY ./src/pv_controller/*.py ${APP_DIR}/
COPY config.ini ${CONF_DIR}/
USER 1000:1000
WORKDIR ${APP_DIR}
VOLUME ${CONF_DIR}
CMD [ "python", "pvc.py", "-f", "/opt/app/config/config.ini" ]
CMD [ "python", "pvc.py" ]

View File

@ -35,7 +35,7 @@ spec:
spec:
containers:
- name: pv-controller
image: wollud1969/pv-controller:1.0.1
image: wollud1969/pv-controller:1.0.6
envFrom:
- configMapRef:
name: pv-controller

View File

@ -37,7 +37,7 @@ class ModbusHandler:
def readInputRegister(self, slave, addr):
res = self.client.read_input_registers(addr, 2, slave=slave)
if (isinstance(res, ReadInputRegistersResponse)):
v = BinaryPayloadDecoder.fromRegisters(res.registers, byteorder=Endian.Big, wordorder=Endian.Big).decode_32bit_float()
v = BinaryPayloadDecoder.fromRegisters(res.registers, byteorder=Endian.BIG, wordorder=Endian.BIG).decode_32bit_float()
return v
elif (isinstance(res, LocalModbusException)):
msg = f"Error: {type(res)}, Content: {res}"

View File

@ -1,4 +1,5 @@
import os
from loguru import logger
class Config:
OPTIONS = {
@ -23,9 +24,10 @@ class Config:
varname = f"{section}__{key}".upper()
try:
self.values[section][key] = os.environ[varname]
logger.info(f"Config: {section} {key} -> {self.values[section][key]}")
except KeyError:
pass
def __getitem__(self, section):
return self.values[index]
return self.values[section]