From 31d3d86eec5daa8012aab1eb07d465109f8933d7 Mon Sep 17 00:00:00 2001 From: LKuemmel Date: Fri, 24 Oct 2025 06:50:58 +0200 Subject: [PATCH 1/3] pro plus: set version topic for secondary --- packages/modules/internal_chargepoint_handler/pro_plus.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/modules/internal_chargepoint_handler/pro_plus.py b/packages/modules/internal_chargepoint_handler/pro_plus.py index c8af1a97c5..f981a932ca 100644 --- a/packages/modules/internal_chargepoint_handler/pro_plus.py +++ b/packages/modules/internal_chargepoint_handler/pro_plus.py @@ -1,4 +1,5 @@ import requests +from helpermodules.subdata import SubData from modules.chargepoints.openwb_pro.chargepoint_module import ChargepointModule from modules.chargepoints.openwb_pro.config import OpenWBPro, OpenWBProConfiguration from modules.common.component_state import ChargepointState @@ -18,6 +19,9 @@ def __init__(self, local_charge_point_num: int, self.store_internal = get_internal_chargepoint_value_store(local_charge_point_num) self.store = get_chargepoint_value_store(hierarchy_id) self.old_chargepoint_state = None + self.version = SubData.system_data["system"].data["version"] + self.current_branch = SubData.system_data["system"].data["current_branch"] + self.current_commit = SubData.system_data["system"].data["current_commit"] super().__init__(OpenWBPro(configuration=OpenWBProConfiguration(ip_address="192.168.192.50"))) self.set_internal_context_handlers(hierarchy_id, internal_cp) @@ -35,6 +39,9 @@ def store_state(chargepoint_state: ChargepointState) -> None: if chargepoint_state is not None and last_tag is not None and last_tag != "": chargepoint_state.rfid = last_tag if chargepoint_state is not None: + chargepoint_state.version = self.version, + chargepoint_state.current_branch = self.current_branch, + chargepoint_state.current_commit = self.current_commit store_state(chargepoint_state) return chargepoint_state else: From 0f8cdcd166d4e2734b94d156ff43f789cc4db90f Mon Sep 17 00:00:00 2001 From: LKuemmel Date: Mon, 3 Nov 2025 07:47:46 +0100 Subject: [PATCH 2/3] fix --- packages/helpermodules/update_config.py | 2 ++ .../internal_chargepoint_handler/pro_plus.py | 13 ++++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/packages/helpermodules/update_config.py b/packages/helpermodules/update_config.py index 75d1fd5f3f..1771b02ede 100644 --- a/packages/helpermodules/update_config.py +++ b/packages/helpermodules/update_config.py @@ -589,6 +589,8 @@ class UpdateConfig: ("openWB/optional/rfid/active", False), ("openWB/system/backup_cloud/config", NO_MODULE), ("openWB/system/backup_cloud/backup_before_update", True), + ("openWB/system/current_branch", None), + ("openWB/system/current_commit", None), ("openWB/system/installAssistantDone", False), ("openWB/system/dataprotection_acknowledged", False), ("openWB/system/datastore_version", DATASTORE_VERSION), diff --git a/packages/modules/internal_chargepoint_handler/pro_plus.py b/packages/modules/internal_chargepoint_handler/pro_plus.py index f981a932ca..f78422b6b6 100644 --- a/packages/modules/internal_chargepoint_handler/pro_plus.py +++ b/packages/modules/internal_chargepoint_handler/pro_plus.py @@ -19,9 +19,12 @@ def __init__(self, local_charge_point_num: int, self.store_internal = get_internal_chargepoint_value_store(local_charge_point_num) self.store = get_chargepoint_value_store(hierarchy_id) self.old_chargepoint_state = None - self.version = SubData.system_data["system"].data["version"] - self.current_branch = SubData.system_data["system"].data["current_branch"] - self.current_commit = SubData.system_data["system"].data["current_commit"] + try: + self.version = SubData.system_data["system"].data["version"] + self.current_branch = SubData.system_data["system"].data["current_branch"] + self.current_commit = SubData.system_data["system"].data["current_commit"] + except KeyError: + raise KeyError("Warten auf Versionsinformationen") super().__init__(OpenWBPro(configuration=OpenWBProConfiguration(ip_address="192.168.192.50"))) self.set_internal_context_handlers(hierarchy_id, internal_cp) @@ -39,8 +42,8 @@ def store_state(chargepoint_state: ChargepointState) -> None: if chargepoint_state is not None and last_tag is not None and last_tag != "": chargepoint_state.rfid = last_tag if chargepoint_state is not None: - chargepoint_state.version = self.version, - chargepoint_state.current_branch = self.current_branch, + chargepoint_state.version = self.version + chargepoint_state.current_branch = self.current_branch chargepoint_state.current_commit = self.current_commit store_state(chargepoint_state) return chargepoint_state From 8140019ddc985bbf88c185ec6a7c1afd92665383 Mon Sep 17 00:00:00 2001 From: LKuemmel Date: Mon, 3 Nov 2025 08:08:43 +0100 Subject: [PATCH 3/3] pytest --- packages/modules/internal_chargepoint_handler/pro_plus_test.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/modules/internal_chargepoint_handler/pro_plus_test.py b/packages/modules/internal_chargepoint_handler/pro_plus_test.py index c84415df6f..bf3bca6977 100644 --- a/packages/modules/internal_chargepoint_handler/pro_plus_test.py +++ b/packages/modules/internal_chargepoint_handler/pro_plus_test.py @@ -3,6 +3,7 @@ from unittest.mock import Mock import pytest +from modules.internal_chargepoint_handler.pro_plus import SubData from modules.common.component_state import ChargepointState from modules.internal_chargepoint_handler.internal_chargepoint_handler_config import InternalChargepoint from modules.internal_chargepoint_handler.pro_plus import ProPlus @@ -10,6 +11,8 @@ @pytest.fixture(autouse=True) def setup_pro_plus(monkeypatch) -> Tuple[ProPlus, Mock]: + system_data_mock = Mock(data={"version": "1.0.0", "current_branch": "main", "current_commit": "abc123"}) + monkeypatch.setattr(SubData, "system_data", {"system": system_data_mock}) pro_plus = ProPlus(0, InternalChargepoint(), 1) mock_store_set = Mock() monkeypatch.setattr(pro_plus.store, "set", mock_store_set)