From 9c911a90c4e50dac1dc7a8333002ae919a8ff8a5 Mon Sep 17 00:00:00 2001 From: Pi Developer Date: Sat, 31 Jan 2026 17:21:43 +0100 Subject: [PATCH] =?UTF-8?q?Fix=20config=20files=20mancanti=20quando=20volu?= =?UTF-8?q?me=20mount=20=C3=A8=20vuoto?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Aggiunto check all'avvio per verificare esistenza inverter.conf e mqtt.json - Se mancanti, crea file di default automaticamente - Risolve problema volume mount che sovrascrive file copiati in build - Config default con valori standard funzionanti - ENV variables sovrascrivono comunque i default tramite update_mqtt_config() Ora il container parte anche con directory ./config vuota --- sources/inverter-mqtt/entrypoint.sh | 35 +++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/sources/inverter-mqtt/entrypoint.sh b/sources/inverter-mqtt/entrypoint.sh index 2bd26c5..f613421 100755 --- a/sources/inverter-mqtt/entrypoint.sh +++ b/sources/inverter-mqtt/entrypoint.sh @@ -7,9 +7,44 @@ echo "" # Configuration paths CONF_FILE="/etc/inverter/inverter.conf" +MQTT_CONF="/etc/inverter/mqtt.json" DISCOVERY_FLAG="/etc/inverter/.discovery_done" TEMP_CONF="/tmp/inverter_discovered.conf" +# Ensure config files exist (copy defaults if missing due to empty volume mount) +if [ ! -f "$CONF_FILE" ]; then + echo "⚠ inverter.conf not found, creating default..." + cat > "$CONF_FILE" << 'EOF' +# Basic configuration options for the actual inverter polling process... +device=/dev/ttyUSB0 +run_interval=120 +amperage_factor=1.0 +watt_factor=1.01 +qpiri=103 +qpiws=40 +qmod=5 +qpigs=110 +EOF +fi + +if [ ! -f "$MQTT_CONF" ]; then + echo "⚠ mqtt.json not found, creating default..." + cat > "$MQTT_CONF" << 'EOF' +{ + "server": "192.168.1.37", + "port": "1883", + "topic": "homeassistant", + "devicename": "voltronic", + "username": "", + "password": "", + "clientid": "voltronic_default", + "influx": { + "enabled": "false" + } +} +EOF +fi + # Environment variables with defaults INVERTER_DEVICE="${INVERTER_DEVICE:-/dev/ttyUSB0}" FORCE_DISCOVERY="${FORCE_DISCOVERY:-false}"