diff --git a/daemon/core/configservices/serviceutils/services.py b/daemon/core/configservices/serviceutils/services.py index 2b564ed4..a770926d 100644 --- a/daemon/core/configservices/serviceutils/services.py +++ b/daemon/core/configservices/serviceutils/services.py @@ -3,9 +3,7 @@ from typing import Any, Dict import netaddr from core import utils -from core.config import Configuration from core.configservice.base import ConfigService, ConfigServiceMode -from core.emulator.enumerations import ConfigDataTypes GROUP_NAME = "Utility" @@ -21,11 +19,7 @@ class DefaultRoute(ConfigService): validate = [] shutdown = [] validation_mode = ConfigServiceMode.BLOCKING - default_configs = [ - Configuration(_id="value1", _type=ConfigDataTypes.STRING, label="Value 1"), - Configuration(_id="value2", _type=ConfigDataTypes.STRING, label="Value 2"), - Configuration(_id="value3", _type=ConfigDataTypes.STRING, label="Value 3"), - ] + default_configs = [] def data(self) -> Dict[str, Any]: addresses = [] diff --git a/daemon/core/configservices/simpleservice.py b/daemon/core/configservices/simpleservice.py index 1ab0ebf0..ae9aa8c4 100644 --- a/daemon/core/configservices/simpleservice.py +++ b/daemon/core/configservices/simpleservice.py @@ -1,4 +1,6 @@ +from core.config import Configuration from core.configservice.base import ConfigService, ConfigServiceMode +from core.emulator.enumerations import ConfigDataTypes class SimpleService(ConfigService): @@ -12,18 +14,24 @@ class SimpleService(ConfigService): validate = [] shutdown = [] validation_mode = ConfigServiceMode.BLOCKING - default_configs = [] + default_configs = [ + Configuration(_id="value1", _type=ConfigDataTypes.STRING, label="Value 1"), + Configuration(_id="value2", _type=ConfigDataTypes.STRING, label="Value 2"), + Configuration(_id="value3", _type=ConfigDataTypes.STRING, label="Value 3"), + ] def get_text(self, name: str) -> str: if name == "test1.sh": return """ # sample script 1 # node id(${node.id}) name(${node.name}) + # config: ${config} echo hello """ elif name == "test2.sh": return """ # sample script 2 # node id(${node.id}) name(${node.name}) + # config: ${config} echo hello2 """ diff --git a/daemon/core/gui/coreclient.py b/daemon/core/gui/coreclient.py index 2c364b58..2748cf85 100644 --- a/daemon/core/gui/coreclient.py +++ b/daemon/core/gui/coreclient.py @@ -879,11 +879,15 @@ class CoreClient: config_service_protos = [] for node_id, node_config in self.config_service_configs.items(): for name, service_config in node_config.items(): + config = service_config.get("config", {}) + config_values = {} + for key, option in config.items(): + config_values[key] = option.value config_proto = configservices_pb2.ConfigServiceConfig( node_id=node_id, name=name, templates=service_config["templates"], - config=service_config.get("config"), + config=config_values, ) config_service_protos.append(config_proto) return config_service_protos