diff --git a/inventory_provider/tasks/worker.py b/inventory_provider/tasks/worker.py index 52c2807b0336c0dc8ab11ad6c7320e0f409c0760..b866a70ac73002e39e35bd1aedce91c704d008ef 100644 --- a/inventory_provider/tasks/worker.py +++ b/inventory_provider/tasks/worker.py @@ -711,11 +711,9 @@ def ims_task(self, use_current=False): def extract_ims_data(): c = InventoryTask.config["ims"] - ds1 = IMS(c['api'], c['username'], c['password']) - ds2 = IMS(c['api'], c['username'], c['password']) - ds3 = IMS(c['api'], c['username'], c['password']) - ds4 = IMS(c['api'], c['username'], c['password']) - ds5 = IMS(c['api'], c['username'], c['password']) + + def _ds() -> IMS: + return IMS(c['api'], c['username'], c['password']) locations = {} lg_routers = [] @@ -729,26 +727,26 @@ def extract_ims_data(): def _populate_locations(): nonlocal locations - locations = {k: v for k, v in ims_data.get_node_locations(ds1)} + locations = {k: v for k, v in ims_data.get_node_locations(ds=_ds())} def _populate_lg_routers(): nonlocal lg_routers - lg_routers = list(ims_data.lookup_lg_routers(ds5)) + lg_routers = list(ims_data.lookup_lg_routers(ds=_ds())) def _populate_customer_contacts(): nonlocal customer_contacts customer_contacts = \ - {k: v for k, v in ims_data.get_customer_service_emails(ds2)} + {k: v for k, v in ims_data.get_customer_service_emails(ds=_ds())} def _populate_circuit_ids_to_monitor(): nonlocal circuit_ids_to_monitor circuit_ids_to_monitor = \ - list(ims_data.get_monitored_circuit_ids(ds3)) + list(ims_data.get_monitored_circuit_ids(ds=_ds())) def _populate_additional_circuit_customer_ids(): nonlocal additional_circuit_customer_ids additional_circuit_customer_ids = \ - ims_data.get_circuit_related_customer_ids(ds4) + ims_data.get_circuit_related_customer_ids(ds=_ds()) exceptions = {} with concurrent.futures.ThreadPoolExecutor() as executor: @@ -771,18 +769,19 @@ def extract_ims_data(): def _populate_hierarchy(): nonlocal hierarchy - hierarchy = {d['id']: d for d in ims_data.get_circuit_hierarchy(ds1)} + hierarchy = { + d['id']: d for d in ims_data.get_circuit_hierarchy(ds=_ds())} logger.debug("hierarchy complete") def _populate_port_id_details(): nonlocal port_id_details - for x in ims_data.get_port_details(ds2): + for x in ims_data.get_port_details(ds=_ds()): pd = port_id_details[x['port_id']] pd.append(x) logger.debug("Port details complete") def _populate_circuit_info(): - for x in ims_data.get_port_id_services(ds3): + for x in ims_data.get_port_id_services(ds=_ds()): port_id_services[x['port_a_id']].append(x) logger.debug("port circuits complete")