From 9f846fd5703aca0bb5ed2c6d8cdff020ac561b68 Mon Sep 17 00:00:00 2001 From: PedroDuarte536 Date: Wed, 7 May 2025 19:37:14 +0100 Subject: [PATCH] add restconf checkbox to TFS UI --- proto/context.proto | 3 ++- src/context/service/database/models/enums/DeviceDriver.py | 1 + src/service/service/service_handler_api/FilterFields.py | 1 + src/webui/service/device/forms.py | 1 + src/webui/service/device/routes.py | 2 ++ src/webui/service/templates/device/add.html | 1 + 6 files changed, 8 insertions(+), 1 deletion(-) diff --git a/proto/context.proto b/proto/context.proto index fb0111e14..98f740024 100644 --- a/proto/context.proto +++ b/proto/context.proto @@ -1,4 +1,4 @@ -// Copyright 2022-2024 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) + // Copyright 2022-2024 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -230,6 +230,7 @@ enum DeviceDriverEnum { DEVICEDRIVER_IETF_SLICE = 14; DEVICEDRIVER_NCE = 15; DEVICEDRIVER_SMARTNIC = 16; + DEVICEDRIVER_RESTCONF = 17 ; } enum DeviceOperationalStatusEnum { diff --git a/src/context/service/database/models/enums/DeviceDriver.py b/src/context/service/database/models/enums/DeviceDriver.py index f6e128355..a608fa68d 100644 --- a/src/context/service/database/models/enums/DeviceDriver.py +++ b/src/context/service/database/models/enums/DeviceDriver.py @@ -39,6 +39,7 @@ class ORM_DeviceDriverEnum(enum.Enum): OC = DeviceDriverEnum.DEVICEDRIVER_OC QKD = DeviceDriverEnum.DEVICEDRIVER_QKD SMARTNIC = DeviceDriverEnum.DEVICEDRIVER_SMARTNIC + RESTCONF = DeviceDriverEnum.DEVICEDRIVER_RESTCONF grpc_to_enum__device_driver = functools.partial( grpc_to_enum, DeviceDriverEnum, ORM_DeviceDriverEnum) diff --git a/src/service/service/service_handler_api/FilterFields.py b/src/service/service/service_handler_api/FilterFields.py index 34f5ce59a..a8173b26e 100644 --- a/src/service/service/service_handler_api/FilterFields.py +++ b/src/service/service/service_handler_api/FilterFields.py @@ -49,6 +49,7 @@ DEVICE_DRIVER_VALUES = { DeviceDriverEnum.DEVICEDRIVER_QKD, DeviceDriverEnum.DEVICEDRIVER_IETF_L3VPN, DeviceDriverEnum.DEVICEDRIVER_SMARTNIC, + DeviceDriverEnum.DEVICEDRIVER_RESTCONF, } # Map allowed filter fields to allowed values per Filter field. If no restriction (free text) None is specified diff --git a/src/webui/service/device/forms.py b/src/webui/service/device/forms.py index 90259295a..a294fe8d5 100644 --- a/src/webui/service/device/forms.py +++ b/src/webui/service/device/forms.py @@ -35,6 +35,7 @@ class AddDeviceForm(FlaskForm): device_drivers_ietf_actn = BooleanField('IETF ACTN') device_drivers_qkd = BooleanField('QKD') device_drivers_smartnic = BooleanField('SMARTNIC') + device_drivers_restconf = BooleanField('RESTCONF') device_config_address = StringField('connect/address',default='127.0.0.1',validators=[DataRequired(), Length(min=5)]) device_config_port = StringField('connect/port',default='0',validators=[DataRequired(), Length(min=1)]) diff --git a/src/webui/service/device/routes.py b/src/webui/service/device/routes.py index 177e36c2e..2cecf976e 100644 --- a/src/webui/service/device/routes.py +++ b/src/webui/service/device/routes.py @@ -137,6 +137,8 @@ def add(): device_drivers.append(DeviceDriverEnum.DEVICEDRIVER_QKD) if form.device_drivers_smartnic.data: device_drivers.append(DeviceDriverEnum.DEVICEDRIVER_SMARTNIC) + if form.device_drivers_restconf.data: + device_drivers.append(DeviceDriverEnum.DEVICEDRIVER_RESTCONF) device_obj.device_drivers.extend(device_drivers) # pylint: disable=no-member try: diff --git a/src/webui/service/templates/device/add.html b/src/webui/service/templates/device/add.html index 15abc0894..1f7a03f92 100644 --- a/src/webui/service/templates/device/add.html +++ b/src/webui/service/templates/device/add.html @@ -98,6 +98,7 @@ {{ form.device_drivers_qkd }} {{ form.device_drivers_qkd.label(class="col-sm-3 col-form-label") }}
{{ form.device_drivers_smartnic }} {{ form.device_drivers_smartnic_actn.label(class="col-sm-3 col-form-label") }} + {{ form.device_drivers_restconf }} {{ form.device_drivers_restconf.label(class="col-sm-3 col-form-label") }} {% endif %} -- GitLab