From 6a0209f13ac0bb62053128e4a2281871caba91de Mon Sep 17 00:00:00 2001 From: Balagangadhar Bathula Date: Sat, 15 Jan 2022 10:11:48 -0500 Subject: [PATCH] Change in interface naming convention (B100G) - For intermediate rates we need to differentiate OTSI group interface name to extract rate. - Change "OTSI-GROUP" to "OTSIGROUP" - Appending "-x00G" to the OTSi-Group interface name, where x = 2, 3, or 4. - OTUCn (ODUCn), where n = 2, 3, or 4 JIRA: TRNSPRTPCE-585 Signed-off-by: Balagangadhar Bathula Change-Id: I84540954d357b68c9255af34b1bfc1ea13035752 --- .../OpenRoadmInterface710.java | 2 +- .../OpenRoadmOtnInterface710.java | 4 +- .../DeviceRendererServiceImpl.java | 6 ++- .../hybrid/test02_B100G_end2end.py | 46 +++++++++---------- 4 files changed, 31 insertions(+), 27 deletions(-) diff --git a/renderer/src/main/java/org/opendaylight/transportpce/renderer/openroadminterface/OpenRoadmInterface710.java b/renderer/src/main/java/org/opendaylight/transportpce/renderer/openroadminterface/OpenRoadmInterface710.java index c90d476c3..cd72a036f 100644 --- a/renderer/src/main/java/org/opendaylight/transportpce/renderer/openroadminterface/OpenRoadmInterface710.java +++ b/renderer/src/main/java/org/opendaylight/transportpce/renderer/openroadminterface/OpenRoadmInterface710.java @@ -181,7 +181,7 @@ public class OpenRoadmInterface710 { // Create generic interface InterfaceBuilder otsiGroupInterfaceBldr = createGenericInterfaceBuilder(portMap, OtsiGroup.class, - logicalConnPoint + "-OTSI-GROUP"); + logicalConnPoint + String.join("-","", "OTSIGROUP", "400G")); // Create a list List listSupportingOtsiInterface = new ArrayList<>(); diff --git a/renderer/src/main/java/org/opendaylight/transportpce/renderer/openroadminterface/OpenRoadmOtnInterface710.java b/renderer/src/main/java/org/opendaylight/transportpce/renderer/openroadminterface/OpenRoadmOtnInterface710.java index 497d15897..2d0c4e56c 100644 --- a/renderer/src/main/java/org/opendaylight/transportpce/renderer/openroadminterface/OpenRoadmOtnInterface710.java +++ b/renderer/src/main/java/org/opendaylight/transportpce/renderer/openroadminterface/OpenRoadmOtnInterface710.java @@ -64,7 +64,7 @@ public class OpenRoadmOtnInterface710 { .setSpeed(Uint32.valueOf(100000)); InterfaceBuilder ethInterfaceBldr = createGenericInterfaceBuilder( portMap, EthernetCsmacd.class, - logicalConnPoint + "-ETHERNET100G"); + logicalConnPoint + "-ETHERNET-100G"); // Create Interface1 type object required for adding as augmentation Interface1Builder ethIf1Builder = new Interface1Builder(); ethInterfaceBldr.addAugmentation(ethIf1Builder.setEthernet(ethIfBuilder.build()).build()); @@ -100,7 +100,7 @@ public class OpenRoadmOtnInterface710 { if (isNetworkPort) { supportingInterface = portMap.getSupportingOducn(); } else { - supportingInterface = logicalConnPoint + "-ETHERNET100G"; + supportingInterface = logicalConnPoint + "-ETHERNET-100G"; } if (supportingInterface == null) { diff --git a/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/DeviceRendererServiceImpl.java b/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/DeviceRendererServiceImpl.java index bf2b343e0..4bef899ec 100644 --- a/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/DeviceRendererServiceImpl.java +++ b/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/DeviceRendererServiceImpl.java @@ -364,6 +364,7 @@ public class DeviceRendererServiceImpl implements DeviceRendererService { String spectralSlotName = String.join(GridConstant.SPECTRAL_SLOT_SEPARATOR, String.valueOf(lowerSpectralSlotNumber), String.valueOf(higherSpectralSlotNumber)); + if (destTp.contains(StringConstants.NETWORK_TOKEN) || srcTp.contains(StringConstants.CLIENT_TOKEN) || srcTp.contains(StringConstants.NETWORK_TOKEN) @@ -392,7 +393,8 @@ public class DeviceRendererServiceImpl implements DeviceRendererService { nodeOpenRoadmVersion.equals(OpenroadmNodeVersion._71) ? Map.of( "ODU", List.of("ODUC4","ODUFLEX"), - "other", List.of("OTUC4", "OTSI-GROUP", spectralSlotName)) + // -400G added due to the change in naming convention + "other", List.of("OTUC4", "OTSIGROUP-400G", spectralSlotName)) : Map.of( "ODU", List.of("ODU", "ODU4"), "other", List.of("OTU", spectralSlotName)); @@ -427,10 +429,12 @@ public class DeviceRendererServiceImpl implements DeviceRendererService { interfacesToDelete.add(String.join(GridConstant.NAME_PARAMETERS_SEPARATOR, srcTp, suffix)); } } + if (srcTp.contains(StringConstants.CLIENT_TOKEN)) { interfacesToDelete.add(String.join(GridConstant.NAME_PARAMETERS_SEPARATOR, srcTp, "ETHERNET")); } if (destTp.contains(StringConstants.CLIENT_TOKEN)) { + interfacesToDelete.add(String.join(GridConstant.NAME_PARAMETERS_SEPARATOR, destTp, "ETHERNET")); } return interfacesToDelete; diff --git a/tests/transportpce_tests/hybrid/test02_B100G_end2end.py b/tests/transportpce_tests/hybrid/test02_B100G_end2end.py index aabe50b0a..9ebcffcd9 100644 --- a/tests/transportpce_tests/hybrid/test02_B100G_end2end.py +++ b/tests/transportpce_tests/hybrid/test02_B100G_end2end.py @@ -283,7 +283,7 @@ class TransportPCEtesting(unittest.TestCase): time.sleep(2) # Check correct configuration of devices - def test_14_check_interface_och_xpdra2(self): + def test_14_check_interface_otsi_xpdra2(self): response = test_utils.check_netconf_node_request( "XPDR-A2", "interface/XPDR2-NETWORK1-755:768") self.assertEqual(response.status_code, requests.codes.ok) @@ -304,10 +304,10 @@ class TransportPCEtesting(unittest.TestCase): def test_15_check_interface_OTSI_GROUP_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-NETWORK1-OTSI-GROUP") + "XPDR-A2", "interface/XPDR2-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-NETWORK1-OTUC4', + input_dict_1 = {'name': 'XPDR2-NETWORK1-OTSIGROUP-400G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', 'supporting-interface-list': 'XPDR2-NETWORK1-755:768', @@ -329,10 +329,10 @@ class TransportPCEtesting(unittest.TestCase): "XPDR-A2", "interface/XPDR2-NETWORK1-OTUC4") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-NETWORK1-OTSI-GROUP', + input_dict_1 = {'name': 'XPDR2-NETWORK1-OTUC4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', - 'supporting-interface-list': 'XPDR2-NETWORK1-OTSI-GROUP', + 'supporting-interface-list': 'XPDR2-NETWORK1-OTSIGROUP-400G', 'type': 'org-openroadm-interfaces:otnOtu', 'supporting-port': 'L1' } @@ -351,7 +351,7 @@ class TransportPCEtesting(unittest.TestCase): res['interface'][0] ['org-openroadm-otn-otu-interfaces:otu']) - def test_17_check_interface_och_xpdrc2(self): + def test_17_check_interface_otsi_xpdrc2(self): response = test_utils.check_netconf_node_request( "XPDR-C2", "interface/XPDR2-NETWORK1-755:768") self.assertEqual(response.status_code, requests.codes.ok) @@ -372,10 +372,10 @@ class TransportPCEtesting(unittest.TestCase): def test_18_check_interface_OTSI_GROUP_xpdrc2(self): response = test_utils.check_netconf_node_request( - "XPDR-C2", "interface/XPDR2-NETWORK1-OTSI-GROUP") + "XPDR-C2", "interface/XPDR2-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-NETWORK1-OTSI-GROUP', + input_dict_1 = {'name': 'XPDR2-NETWORK1-OTSIGROUP-400G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', 'supporting-interface-list': 'XPDR2-NETWORK1-755:768', @@ -400,7 +400,7 @@ class TransportPCEtesting(unittest.TestCase): input_dict_1 = {'name': 'XPDR1-NETWORK1-OTUC4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', - 'supporting-interface-list': 'XPDR2-NETWORK1-OTSI-GROUP', + 'supporting-interface-list': 'XPDR2-NETWORK1-OTSIGROUP-400G', 'type': 'org-openroadm-interfaces:otnOtu', 'supporting-port': 'L1' } @@ -640,10 +640,10 @@ class TransportPCEtesting(unittest.TestCase): def test_31_check_interface_100GE_CLIENT_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-CLIENT1-ETHERNET100G") + "XPDR-A2", "interface/XPDR2-CLIENT1-ETHERNET-100G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-CLIENT1-ETHERNET100G', + input_dict_1 = {'name': 'XPDR2-CLIENT1-ETHERNET-100G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/1/1-PLUG-CLIENT', 'type': 'org-openroadm-interfaces:ethernetCsmacd', @@ -663,7 +663,7 @@ class TransportPCEtesting(unittest.TestCase): input_dict_1 = {'name': 'XPDR2-CLIENT1-ODU4-service-100GE', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/1/1-PLUG-CLIENT', - 'supporting-interface-list': 'XPDR2-CLIENT1-ETHERNET100G', + 'supporting-interface-list': 'XPDR2-CLIENT1-ETHERNET-100G', 'type': 'org-openroadm-interfaces:otnOdu', 'supporting-port': 'C1'} input_dict_2 = { @@ -732,10 +732,10 @@ class TransportPCEtesting(unittest.TestCase): def test_35_check_interface_100GE_CLIENT_xpdrc2(self): response = test_utils.check_netconf_node_request( - "XPDR-C2", "interface/XPDR2-CLIENT1-ETHERNET100G") + "XPDR-C2", "interface/XPDR2-CLIENT1-ETHERNET-100G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-CLIENT1-ETHERNET100G', + input_dict_1 = {'name': 'XPDR2-CLIENT1-ETHERNET-100G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/1/1-PLUG-CLIENT', 'type': 'org-openroadm-interfaces:ethernetCsmacd', @@ -755,7 +755,7 @@ class TransportPCEtesting(unittest.TestCase): input_dict_1 = {'name': 'XPDR2-CLIENT1-ODU4-service-100GE', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/1/1-PLUG-CLIENT', - 'supporting-interface-list': 'XPDR2-CLIENT1-ETHERNET100G', + 'supporting-interface-list': 'XPDR2-CLIENT1-ETHERNET-100G', 'type': 'org-openroadm-interfaces:otnOdu', 'supporting-port': 'C1'} input_dict_2 = { @@ -977,7 +977,7 @@ class TransportPCEtesting(unittest.TestCase): def test_52_check_no_interface_100GE_CLIENT_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-CLIENT1-ETHERNET100G") + "XPDR-A2", "interface/XPDR2-CLIENT1-ETHERNET-100G") self.assertEqual(response.status_code, requests.codes.conflict) def test_53_check_otn_topo_links(self): @@ -1065,14 +1065,14 @@ class TransportPCEtesting(unittest.TestCase): "XPDR-A2", "interface/XPDR2-NETWORK1-OTUC4") self.assertEqual(response.status_code, requests.codes.conflict) - def test_63_check_no_interface_OCH_xpdra2(self): + def test_63_check_no_interface_OTSI_xpdra2(self): response = test_utils.check_netconf_node_request( "XPDR-A2", "interface/XPDR2-NETWORK1-755:768") self.assertEqual(response.status_code, requests.codes.conflict) - def test_64_check_no_interface_OTSI_xpdra2(self): + def test_64_check_no_interface_OTSIG_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-NETWORK1-OTSI-GROUP") + "XPDR-A2", "interface/XPDR2-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.conflict) def test_65_getLinks_OtnTopology(self): @@ -1286,10 +1286,10 @@ class TransportPCEtesting(unittest.TestCase): def test_80_check_interface_OTSI_GROUP_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR1-NETWORK1-OTSI-GROUP") + "XPDR-A2", "interface/XPDR1-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR1-CLIENT1-ODU2e-service1-10GE', + input_dict_1 = {'name': 'XPDR1-NETWORK1-OTSIGROUP-400G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/1/2-PLUG-NET', ['supporting-interface-list'][0]: 'XPDR1-NETWORK1-755:768', @@ -1312,7 +1312,7 @@ class TransportPCEtesting(unittest.TestCase): input_dict_1 = {'name': 'XPDR1-NETWORK1-OTUC4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/1/2-PLUG-NET', - ['supporting-interface-list'][0]: 'XPDR1-NETWORK1-OTSI-GROUP', + ['supporting-interface-list'][0]: 'XPDR1-NETWORK1-OTSIGROUP-400G', 'type': 'org-openroadm-interfaces:otnOtu', 'supporting-port': 'L1'} input_dict_2 = {"tx-sapi": "ANeUjNzWtDLV", @@ -1447,7 +1447,7 @@ class TransportPCEtesting(unittest.TestCase): def test_87_check_no_interface_OTSI_GROUP_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR1-NETWORK1-OTSI-GROUP") + "XPDR-A2", "interface/XPDR1-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.conflict) def test_88_check_no_interface_OTSI_xpdra2(self): -- 2.36.6