From 899a066622a3ae24c2df280523ccc3a1a4d539ef Mon Sep 17 00:00:00 2001 From: Sam Roberts <sam.roberts@geant.org> Date: Fri, 11 Oct 2024 15:47:39 +0100 Subject: [PATCH] make things a little more legible --- inventory_provider/routes/poller.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/inventory_provider/routes/poller.py b/inventory_provider/routes/poller.py index 61b15c37..6e18e894 100644 --- a/inventory_provider/routes/poller.py +++ b/inventory_provider/routes/poller.py @@ -876,9 +876,10 @@ def load_interfaces_to_poll(config, hostname=None, no_lab=False, use_next_redis= _get_services_and_customers(config, hostname, use_next_redis) snmp_indexes = common.load_snmp_indexes(config, hostname, use_next_redis) nren_regions = _load_nren_regions(config, use_next_redis) - unique_regions = set([value for value in nren_regions.values()]) - region_index = {region_key: [nren for nren, reg in nren_regions.items() if reg == region_key] - for region_key in unique_regions} + unique_regions = set(nren_regions.values()) + region_index = {} + for region_key in unique_regions: + region_index[region_key] = {nren for nren, reg in nren_regions.items() if reg == region_key} def _get_populated_interfaces(all_interfaces): if use_next_redis: @@ -907,9 +908,12 @@ def load_interfaces_to_poll(config, hostname=None, no_lab=False, use_next_redis= ifc['circuits'] = ifc_services_and_customers['services'] _customers = ifc_services_and_customers.get('customers', []) + customer_set = {c['name'] for c in _customers} region = None for region_name in region_index: - if any(customer['name'] in region_index[region_name] for customer in _customers): + # check if any of the customers are in this region + if any(region_index[region_name] & customer_set): + # customers will only have one region, so if there's a match, break here region = region_name break dashboards = _get_dashboards(ifc, region) -- GitLab