Skip to content
Snippets Groups Projects
Commit ec53aaa8 authored by Lluis Gifre Renom's avatar Lluis Gifre Renom
Browse files

Service component:

- Updated config rules for L2NM Emulated/OpenConfig Service Handlers
parent 5901b3e9
No related branches found
No related tags found
2 merge requests!142Release TeraFlowSDN 2.1,!71OFC'23 + IETF L2VPN Device Driver + Device Controllers + Multiple small improvements
......@@ -32,7 +32,7 @@ def setup_config_rules(
#bgp_as = json_settings.get('bgp_as', 0 ) # 65000
#bgp_route_target = json_settings.get('bgp_route_target', '0:0') # 65000:333
router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10'
#router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10'
#route_distinguisher = json_endpoint_settings.get('route_distinguisher', '0:0' ) # '60001:801'
sub_interface_index = json_endpoint_settings.get('sub_interface_index', 0 ) # 1
vlan_id = json_endpoint_settings.get('vlan_id', 1 ) # 400
......@@ -46,17 +46,17 @@ def setup_config_rules(
connection_point_id = 'VC-1'
json_config_rules = [
json_config_rule_set(
'/network_instance[default]',
{'name': 'default', 'type': 'DEFAULT_INSTANCE', 'router_id': router_id}),
#json_config_rule_set(
# '/network_instance[default]',
# {'name': 'default', 'type': 'DEFAULT_INSTANCE', 'router_id': router_id}),
json_config_rule_set(
'/network_instance[default]/protocols[OSPF]',
{'name': 'default', 'identifier': 'OSPF', 'protocol_name': 'OSPF'}),
#json_config_rule_set(
# '/network_instance[default]/protocols[OSPF]',
# {'name': 'default', 'identifier': 'OSPF', 'protocol_name': 'OSPF'}),
json_config_rule_set(
'/network_instance[default]/protocols[STATIC]',
{'name': 'default', 'identifier': 'STATIC', 'protocol_name': 'STATIC'}),
#json_config_rule_set(
# '/network_instance[default]/protocols[STATIC]',
# {'name': 'default', 'identifier': 'STATIC', 'protocol_name': 'STATIC'}),
json_config_rule_set(
'/network_instance[{:s}]'.format(network_instance_name),
......@@ -69,7 +69,7 @@ def setup_config_rules(
json_config_rule_set(
'/network_instance[{:s}]/interface[{:s}]'.format(network_instance_name, if_cirid_name),
{'name': network_instance_name, 'id': if_cirid_name, 'interface': if_cirid_name,
'subinterface': sub_interface_index}),
'subinterface': sub_interface_index}),
json_config_rule_set(
'/network_instance[{:s}]/connection_point[{:s}]'.format(network_instance_name, connection_point_id),
......@@ -94,7 +94,7 @@ def teardown_config_rules(
#bgp_as = json_settings.get('bgp_as', 0 ) # 65000
#bgp_route_target = json_settings.get('bgp_route_target', '0:0') # 65000:333
router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10'
#router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10'
#route_distinguisher = json_endpoint_settings.get('route_distinguisher', '0:0' ) # '60001:801'
sub_interface_index = json_endpoint_settings.get('sub_interface_index', 0 ) # 1
#vlan_id = json_endpoint_settings.get('vlan_id', 1 ) # 400
......@@ -105,36 +105,36 @@ def teardown_config_rules(
if_cirid_name = '{:s}.{:s}'.format(endpoint_name, str(circuit_id))
network_instance_name = 'ELAN-AC:{:s}'.format(str(circuit_id))
connection_point_id = 'VC-1'
#connection_point_id = 'VC-1'
json_config_rules = [
json_config_rule_delete(
'/network_instance[{:s}]/connection_point[{:s}]'.format(network_instance_name, connection_point_id),
{'name': network_instance_name, 'connection_point': connection_point_id}),
json_config_rule_delete(
'/network_instance[{:s}]/interface[{:s}]'.format(network_instance_name, if_cirid_name),
{'name': network_instance_name, 'id': if_cirid_name, 'interface': if_cirid_name,
'subinterface': sub_interface_index}),
#json_config_rule_delete(
# '/network_instance[{:s}]/connection_point[{:s}]'.format(network_instance_name, connection_point_id),
# {'name': network_instance_name, 'connection_point': connection_point_id}),
json_config_rule_delete(
'/interface[{:s}]/subinterface[{:d}]'.format(if_cirid_name, sub_interface_index),
{'name': if_cirid_name, 'index': sub_interface_index}),
#json_config_rule_delete(
# '/network_instance[{:s}]/interface[{:s}]'.format(network_instance_name, if_cirid_name),
# {'name': network_instance_name, 'id': if_cirid_name, 'interface': if_cirid_name,
# 'subinterface': sub_interface_index}),
json_config_rule_delete(
'/network_instance[{:s}]'.format(network_instance_name),
{'name': network_instance_name}),
json_config_rule_delete(
'/network_instance[default]/protocols[STATIC]',
{'name': 'default', 'identifier': 'STATIC', 'protocol_name': 'STATIC'}),
'/interface[{:s}]/subinterface[{:d}]'.format(if_cirid_name, sub_interface_index),
{'name': if_cirid_name, 'index': sub_interface_index}),
json_config_rule_delete(
'/network_instance[default]/protocols[OSPF]',
{'name': 'default', 'identifier': 'OSPF', 'protocol_name': 'OSPF'}),
#json_config_rule_delete(
# '/network_instance[default]/protocols[STATIC]',
# {'name': 'default', 'identifier': 'STATIC', 'protocol_name': 'STATIC'}),
json_config_rule_delete(
'/network_instance[default]',
{'name': 'default', 'type': 'DEFAULT_INSTANCE', 'router_id': router_id}),
#json_config_rule_delete(
# '/network_instance[default]/protocols[OSPF]',
# {'name': 'default', 'identifier': 'OSPF', 'protocol_name': 'OSPF'}),
#json_config_rule_delete(
# '/network_instance[default]',
# {'name': 'default', 'type': 'DEFAULT_INSTANCE', 'router_id': router_id}),
]
return json_config_rules
......@@ -20,7 +20,7 @@ def setup_config_rules(
service_uuid : str, connection_uuid : str, device_uuid : str, endpoint_uuid : str, endpoint_name : str,
service_settings : TreeNode, endpoint_settings : TreeNode
) -> List[Dict]:
if service_settings is None: return []
if endpoint_settings is None: return []
......@@ -49,31 +49,21 @@ def setup_config_rules(
json_config_rule_set(
'/network_instance[{:s}]'.format(network_instance_name),
{'name': network_instance_name,
'type': 'L2VSI'}),
{'name': network_instance_name, 'type': 'L2VSI'}),
json_config_rule_set(
'/interface[{:s}]/subinterface[0]'.format(if_cirid_name),
{'name': if_cirid_name,
'type': 'l2vlan',
'index': sub_interface_index,
'vlan_id': vlan_id}),
'/interface[{:s}]/subinterface[{:d}]'.format(if_cirid_name, sub_interface_index),
{'name': if_cirid_name, 'type': 'l2vlan', 'index': sub_interface_index, 'vlan_id': vlan_id}),
json_config_rule_set(
'/network_instance[{:s}]/interface[{:s}]'.format(network_instance_name, if_cirid_name),
{'name': network_instance_name,
'id': if_cirid_name,
'interface': if_cirid_name,
'subinterface': 0
}),
{'name': network_instance_name, 'id': if_cirid_name, 'interface': if_cirid_name,
'subinterface': sub_interface_index}),
json_config_rule_set(
'/network_instance[{:s}]/connection_point[{:s}]'.format(network_instance_name, connection_point_id),
{'name': network_instance_name,
'connection_point': connection_point_id,
'VC_ID': circuit_id,
'remote_system': remote_router
}),
{'name': network_instance_name, 'connection_point': connection_point_id, 'VC_ID': circuit_id,
'remote_system': remote_router}),
]
return json_config_rules
......@@ -95,7 +85,7 @@ def teardown_config_rules(
#router_id = json_endpoint_settings.get('router_id', '0.0.0.0') # '10.95.0.10'
#route_distinguisher = json_endpoint_settings.get('route_distinguisher', '0:0' ) # '60001:801'
#sub_interface_index = json_endpoint_settings.get('sub_interface_index', 0 ) # 1
sub_interface_index = json_endpoint_settings.get('sub_interface_index', 0 ) # 1
#vlan_id = json_endpoint_settings.get('vlan_id', 1 ) # 400
#address_ip = json_endpoint_settings.get('address_ip', '0.0.0.0') # '2.2.2.1'
#address_prefix = json_endpoint_settings.get('address_prefix', 24 ) # 30
......@@ -104,17 +94,26 @@ def teardown_config_rules(
if_cirid_name = '{:s}.{:s}'.format(endpoint_name, str(circuit_id))
network_instance_name = 'ELAN-AC:{:s}'.format(str(circuit_id))
#connection_point_id = 'VC-1'
connection_point_id = 'VC-1'
json_config_rules = [
json_config_rule_delete(
'/network_instance[{:s}]/connection_point[{:s}]'.format(network_instance_name, connection_point_id),
{'name': network_instance_name, 'connection_point': connection_point_id, 'VC_ID': circuit_id}),
json_config_rule_delete(
'/network_instance[{:s}]/interface[{:s}]'.format(network_instance_name, if_cirid_name),
{'name': network_instance_name, 'id': if_cirid_name, 'interface': if_cirid_name,
'subinterface': sub_interface_index}),
json_config_rule_delete(
'/interface[{:s}]/subinterface[{:d}]'.format(if_cirid_name, sub_interface_index),
{'name': if_cirid_name, 'index': sub_interface_index}),
json_config_rule_delete(
'/network_instance[{:s}]'.format(network_instance_name),
{'name': network_instance_name}),
json_config_rule_delete(
'/interface[{:s}]/subinterface[0]'.format(if_cirid_name),{
'name': if_cirid_name,
}),
]
return json_config_rules
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