Skip to content
Snippets Groups Projects
Commit c603f52f authored by Bjarke Madsen's avatar Bjarke Madsen
Browse files

reuse data from api calls

parent edf355df
No related branches found
No related tags found
No related merge requests found
...@@ -390,7 +390,7 @@ def _interfaces_to_keep(interface, excluded_nrens): ...@@ -390,7 +390,7 @@ def _interfaces_to_keep(interface, excluded_nrens):
return should_keep return should_keep
def _provision_interfaces(thread_executor: ThreadPoolExecutor, config, org_config, ds_name, token): def _provision_interfaces(thread_executor: ThreadPoolExecutor, config, org_config, ds_name, token, interfaces, services, regions):
""" """
This function is used to provision most dashboards, This function is used to provision most dashboards,
overwriting existing ones. overwriting existing ones.
...@@ -403,10 +403,6 @@ def _provision_interfaces(thread_executor: ThreadPoolExecutor, config, org_confi ...@@ -403,10 +403,6 @@ def _provision_interfaces(thread_executor: ThreadPoolExecutor, config, org_confi
:return: generator of dashboards that were created :return: generator of dashboards that were created
""" """
interfaces = get_interfaces(config['inventory_provider'])
services = fetch_services(config['reporting_provider'])
regions = get_nren_regions(config['inventory_provider'])
excluded_nrens = org_config['excluded_nrens'] excluded_nrens = org_config['excluded_nrens']
excluded_folders = org_config.get('excluded_folders', {}) excluded_folders = org_config.get('excluded_folders', {})
...@@ -779,7 +775,7 @@ def _provision_orgs(config): ...@@ -779,7 +775,7 @@ def _provision_orgs(config):
return all_orgs return all_orgs
def _provision_org(config, org, org_config): def _provision_org(config, org, org_config, interfaces, services, regions):
try: try:
request = AdminRequest(**config) request = AdminRequest(**config)
org_id = org['id'] org_id = org['id']
...@@ -812,7 +808,7 @@ def _provision_org(config, org, org_config): ...@@ -812,7 +808,7 @@ def _provision_org(config, org, org_config):
# call to list is needed to queue up the futures # call to list is needed to queue up the futures
managed_dashboards = list(itertools.chain( managed_dashboards = list(itertools.chain(
_provision_interfaces(*args), _provision_interfaces(*args, interfaces, services, regions),
_provision_gws_indirect(*args), _provision_gws_indirect(*args),
_provision_gws_direct(*args), _provision_gws_direct(*args),
_provision_eumetsat_multicast(*args), _provision_eumetsat_multicast(*args),
...@@ -901,9 +897,11 @@ def provision(config): ...@@ -901,9 +897,11 @@ def provision(config):
return None return None
orgs = list(filter(lambda t: t[1] is not None, [(org, _find_org_config(org)) for org in all_orgs])) orgs = list(filter(lambda t: t[1] is not None, [(org, _find_org_config(org)) for org in all_orgs]))
interfaces = get_interfaces(config['inventory_provider'])
services = fetch_services(config['reporting_provider'])
regions = get_nren_regions(config['inventory_provider'])
for org, org_config in orgs: for org, org_config in orgs:
_provision_org(config, org, org_config) _provision_org(config, org, org_config, interfaces, services, regions)
logger.info(f'Time to complete: {time.time() - start}') logger.info(f'Time to complete: {time.time() - start}')
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment