diff --git a/inventory_provider/tasks/worker.py b/inventory_provider/tasks/worker.py index e0330a0cbafcca85343abca4899889c61f4465ff..84e39ae4ef49fabed1f0d52238c2f085c2dd0aae 100644 --- a/inventory_provider/tasks/worker.py +++ b/inventory_provider/tasks/worker.py @@ -582,17 +582,17 @@ def update_interfaces_to_services(self, use_current=False): s['other_end_equipment'] = '' s['other_end_port'] = '' - s['other_end_card_d'] = '' # this is redundant I believe - s['other_end_logical_unit'] = '' # this is redundant I believe - s['manufacturer'] = '' # this is redundant I believe s.pop('port_a_id', None) s.pop('port_b_id', None) for port_info in port_id_details.values(): + service_ids = set() services = [] for service in port_id_services[port_info['port_id']]: - _format_service(service) - services.append(service) + if service['id'] not in service_ids: + _format_service(service) + services.append(service) + service_ids.add(service['id']) rp.set( f'ims:interface_services:{port_info["equipment_name"]}:'