From: tierno Date: Mon, 9 Mar 2020 13:14:27 +0000 (+0000) Subject: Arista SDN. Skip configuring repeated cps X-Git-Tag: v7.1.0rc1~1^2~14 X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FRO.git;a=commitdiff_plain;h=8e282cfed41bdee78e9f0152fbcc3c2b33bc7c65 Arista SDN. Skip configuring repeated cps Change-Id: Ic4662828b44f872a66c3a75f33ef22820e9ed200 Signed-off-by: tierno --- diff --git a/RO-SDN-arista/osm_rosdn_arista/wimconn_arista.py b/RO-SDN-arista/osm_rosdn_arista/wimconn_arista.py index 76d14b4c..0b49cb03 100644 --- a/RO-SDN-arista/osm_rosdn_arista/wimconn_arista.py +++ b/RO-SDN-arista/osm_rosdn_arista/wimconn_arista.py @@ -561,6 +561,7 @@ class AristaSdnConnector(SdnConnectorBase): vlan_processed = False vlan_id = '' i = 0 + processed_connection_points = [] for cp in connection_points: i += 1 encap_info = cp.get(self.__ENCAPSULATION_INFO_PARAM) @@ -606,6 +607,12 @@ class AristaSdnConnector(SdnConnectorBase): if not interface: raise SdnConnectorError(message="Connection point switch port empty for switch_dpid {}".format(switch_id), http_code=406) + # remove those connections that are equal. This happens when several sriovs are located in the same + # compute node interface, that is, in the same switch and interface + switches = [x for x in switches if x not in processed_connection_points] + if not switches: + continue + processed_connection_points += switches for switch in switches: # it should be only one switch where the mac is attached if encap_type == 'dot1q':