Skip to content
Snippets Groups Projects
Commit 974df920 authored by geant-release-service's avatar geant-release-service
Browse files

Finished release 0.47.

parents f5a7b2eb 10996afb
No related branches found
No related tags found
No related merge requests found
...@@ -303,18 +303,20 @@ def _provision_interfaces(config, org_config, ds_name, token): ...@@ -303,18 +303,20 @@ def _provision_interfaces(config, org_config, ds_name, token):
excluded_nrens = org_config['excluded_nrens'] excluded_nrens = org_config['excluded_nrens']
def excluded(interface): def interfaces_to_keep(interface):
desc = interface['description'].lower() dash_info = interface.get('dashboards_info')
lab = 'lab.office' in interface['router'].lower() if dash_info is None:
to_exclude = any(nren.lower() in desc for nren in excluded_nrens) logger.info(f'No "dashboards_info" for '
if not (to_exclude or lab): f'{interface["router"]}:{interface["name"]}')
if 'dashboards_info' not in interface: # throw it away
to_exclude = True return False
logger.info(f'No "dashboards_info" for ' dashboards = {nren['name'].lower() for nren in dash_info}
f'{interface["router"]}:{interface["name"]}') is_lab_router = 'lab.office' in interface['router'].lower()
return not (to_exclude or lab) should_keep = not (is_lab_router or any(
nren.lower() in dashboards for nren in excluded_nrens))
relevant_interfaces = list(filter(excluded, interfaces)) return should_keep
relevant_interfaces = list(filter(interfaces_to_keep, interfaces))
for interface in relevant_interfaces: for interface in relevant_interfaces:
interface['dashboards_info'] = list(filter( interface['dashboards_info'] = list(filter(
lambda x: x['name'] != '', lambda x: x['name'] != '',
......
...@@ -199,6 +199,7 @@ def get_nren_interface_data(services, interfaces, excluded_dashboards): ...@@ -199,6 +199,7 @@ def get_nren_interface_data(services, interfaces, excluded_dashboards):
if 'MDVPN' in service['service_type']: if 'MDVPN' in service['service_type']:
# MDVPN type services don't have data in BRIAN # MDVPN type services don't have data in BRIAN
continue continue
title = f'{name} ({sid})' title = f'{name} ({sid})'
dashboard['SERVICES'].append({ dashboard['SERVICES'].append({
'measurement': measurement, 'measurement': measurement,
...@@ -256,6 +257,12 @@ def get_nren_interface_data(services, interfaces, excluded_dashboards): ...@@ -256,6 +257,12 @@ def get_nren_interface_data(services, interfaces, excluded_dashboards):
}) })
result[dashboard_name] = dashboard result[dashboard_name] = dashboard
for customer in list(result.keys()):
lengths = [len(val) for val in result[customer].values()]
if sum(lengths) == 0:
# no services/interfaces, so remove it
del result[customer]
return result return result
......
...@@ -2,6 +2,10 @@ ...@@ -2,6 +2,10 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
## [0.47] - 2023-02-27
- POL1-653: Changed filtering of excluded_nrens to be based on destination dashboard rather than interface description parsing
- Changed service-based dashboards code to not provision empty dashboards
## [0.46] - 2022-12-7 ## [0.46] - 2022-12-7
- POL1-645: Changed NREN aggregate code to not add duplicate interfaces - POL1-645: Changed NREN aggregate code to not add duplicate interfaces
......
...@@ -2,7 +2,7 @@ from setuptools import setup, find_packages ...@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
setup( setup(
name='brian-dashboard-manager', name='brian-dashboard-manager',
version="0.46", version="0.47",
author='GEANT', author='GEANT',
author_email='swd@geant.org', author_email='swd@geant.org',
description='', description='',
......
...@@ -14,7 +14,7 @@ deps = ...@@ -14,7 +14,7 @@ deps =
commands = commands =
coverage erase coverage erase
coverage run --source brian_dashboard_manager -m py.test {posargs} coverage run --source brian_dashboard_manager -m pytest {posargs}
coverage combine coverage combine
coverage xml coverage xml
coverage html coverage html
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment