Skip to content
Snippets Groups Projects
Commit 3cd5d40a authored by Shayan Hajipour's avatar Shayan Hajipour
Browse files

feat:

- IETF data added to l3nm default config rules in the frontend pathcomp
- controller device type added to the devices that are managed by a controller in get_devices_from_connection function
parent 3aea4dc0
No related branches found
No related tags found
2 merge requests!359Release TeraFlowSDN 5.0,!308Resolve "(CTTC) Elaboration of the service component to handler IETF Slice and NCE domains"
...@@ -22,6 +22,7 @@ LOGGER = logging.getLogger(__name__) ...@@ -22,6 +22,7 @@ LOGGER = logging.getLogger(__name__)
SETTINGS_RULE_NAME = '/settings' SETTINGS_RULE_NAME = '/settings'
STATIC_ROUTING_RULE_NAME = '/static_routing' STATIC_ROUTING_RULE_NAME = '/static_routing'
IETF_DATA = 'ietf_data'
RE_UUID = re.compile(r'([0-9a-fA-F]{8})\-([0-9a-fA-F]{4})\-([0-9a-fA-F]{4})\-([0-9a-fA-F]{4})\-([0-9a-fA-F]{12})') RE_UUID = re.compile(r'([0-9a-fA-F]{8})\-([0-9a-fA-F]{4})\-([0-9a-fA-F]{4})\-([0-9a-fA-F]{4})\-([0-9a-fA-F]{12})')
...@@ -93,6 +94,7 @@ def compose_l3nm_config_rules(main_service_config_rules : List, subservice_confi ...@@ -93,6 +94,7 @@ def compose_l3nm_config_rules(main_service_config_rules : List, subservice_confi
CONFIG_RULES = [ CONFIG_RULES = [
(SETTINGS_RULE_NAME, L3NM_SETTINGS_FIELD_DEFAULTS), (SETTINGS_RULE_NAME, L3NM_SETTINGS_FIELD_DEFAULTS),
(STATIC_ROUTING_RULE_NAME, {}), (STATIC_ROUTING_RULE_NAME, {}),
(IETF_DATA, {}),
] ]
for rule_name, defaults in CONFIG_RULES: for rule_name, defaults in CONFIG_RULES:
compose_config_rules(main_service_config_rules, subservice_config_rules, rule_name, defaults) compose_config_rules(main_service_config_rules, subservice_config_rules, rule_name, defaults)
......
...@@ -287,8 +287,12 @@ class TaskExecutor: ...@@ -287,8 +287,12 @@ class TaskExecutor:
devices.setdefault(device_type, dict())[device_uuid] = device devices.setdefault(device_type, dict())[device_uuid] = device
else: else:
if not exclude_managed_by_controller: if not exclude_managed_by_controller:
device_type = DeviceTypeEnum._value2member_map_[device.device_type] controller_device_type_enum = DeviceTypeEnum._value2member_map_[controller.device_type]
devices.setdefault(device_type, dict())[device_uuid] = device if controller_device_type_enum == DeviceTypeEnum.IETF_SLICE:
devices.setdefault(controller_device_type_enum, dict())[device_uuid] = device
else:
device_type = DeviceTypeEnum._value2member_map_[device.device_type]
devices.setdefault(device_type, dict())[device_uuid] = device
device_type = DeviceTypeEnum._value2member_map_[controller.device_type] device_type = DeviceTypeEnum._value2member_map_[controller.device_type]
devices.setdefault(device_type, dict())[controller.device_id.device_uuid.uuid] = controller devices.setdefault(device_type, dict())[controller.device_id.device_uuid.uuid] = controller
return devices return devices
...@@ -321,7 +325,7 @@ class TaskExecutor: ...@@ -321,7 +325,7 @@ class TaskExecutor:
self, connection : Connection, service : Service, **service_handler_settings self, connection : Connection, service : Service, **service_handler_settings
) -> Dict[DeviceTypeEnum, Tuple['_ServiceHandler', Dict[str, Device]]]: ) -> Dict[DeviceTypeEnum, Tuple['_ServiceHandler', Dict[str, Device]]]:
connection_device_types : Dict[DeviceTypeEnum, Dict[str, Device]] = self.get_devices_from_connection( connection_device_types : Dict[DeviceTypeEnum, Dict[str, Device]] = self.get_devices_from_connection(
connection, exclude_managed_by_controller=True connection, exclude_managed_by_controller=False
) )
service_handlers : Dict[DeviceTypeEnum, Tuple['_ServiceHandler', Dict[str, Device]]] = dict() service_handlers : Dict[DeviceTypeEnum, Tuple['_ServiceHandler', Dict[str, Device]]] = dict()
for device_type, connection_devices in connection_device_types.items(): for device_type, connection_devices in connection_device_types.items():
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment