Skip to content
Snippets Groups Projects
Commit 13f2084e authored by Release Webservice's avatar Release Webservice
Browse files

Finished release 0.15.

parents 72d43c45 b8e890dc
No related branches found
No related tags found
No related merge requests found
...@@ -5,8 +5,7 @@ from concurrent.futures import ProcessPoolExecutor ...@@ -5,8 +5,7 @@ from concurrent.futures import ProcessPoolExecutor
from brian_dashboard_manager.templating.render import create_dropdown_panel from brian_dashboard_manager.templating.render import create_dropdown_panel
from brian_dashboard_manager.templating.helpers import \ from brian_dashboard_manager.templating.helpers import \
is_aggregate_interface, is_logical_interface, is_physical_interface, \ is_aggregate_interface, is_logical_interface, is_physical_interface, \
num_generator, gridPos_generator, get_aggregate_targets, \ num_generator, gridPos_generator, get_panel_fields, create_aggregate_panel
get_panel_fields
def get_nrens(interfaces): def get_nrens(interfaces):
...@@ -58,9 +57,7 @@ def get_nrens(interfaces): ...@@ -58,9 +57,7 @@ def get_nrens(interfaces):
return result return result
# start IDs from 3 since aggregate id_gen = num_generator(start=1)
# panels have hardcoded IDs (1, 2).
id_gen = num_generator(start=3)
# aggregate panels have y=0, start generating at 1*height # aggregate panels have y=0, start generating at 1*height
gridPos = gridPos_generator(id_gen, start=1) gridPos = gridPos_generator(id_gen, start=1)
...@@ -81,7 +78,16 @@ def get_panel_definitions(panels, datasource, errors=False): ...@@ -81,7 +78,16 @@ def get_panel_definitions(panels, datasource, errors=False):
def build_data(nren, data, datasource): def build_data(nren, data, datasource):
agg_ingress, agg_egress = get_aggregate_targets(data['AGGREGATES']) global gridPos
if len(data['AGGREGATES']) > 0:
agg_panels = create_aggregate_panel(
f'Aggregate - {nren}',
gridPos_generator(id_gen, agg=True),
data['AGGREGATES'], datasource)
else:
# if there's no aggregate panel(s), start other stuff at y=0.
gridPos = gridPos_generator(id_gen, start=0)
agg_panels = []
services_dropdown = create_dropdown_panel('Services', **next(gridPos)) services_dropdown = create_dropdown_panel('Services', **next(gridPos))
service_panels = get_panel_definitions(data['SERVICES'], datasource) service_panels = get_panel_definitions(data['SERVICES'], datasource)
iface_dropdown = create_dropdown_panel('Interfaces', **next(gridPos)) iface_dropdown = create_dropdown_panel('Interfaces', **next(gridPos))
...@@ -90,8 +96,7 @@ def build_data(nren, data, datasource): ...@@ -90,8 +96,7 @@ def build_data(nren, data, datasource):
return { return {
'nren_name': nren, 'nren_name': nren,
'datasource': datasource, 'datasource': datasource,
'ingress_aggregate_targets': agg_ingress, 'aggregate_panels': agg_panels,
'egress_aggregate_targets': agg_egress,
'dropdown_groups': [ 'dropdown_groups': [
{ {
'dropdown': services_dropdown, 'dropdown': services_dropdown,
......
...@@ -31,198 +31,9 @@ ...@@ -31,198 +31,9 @@
"version": 1, "version": 1,
"links": [], "links": [],
"panels": [ "panels": [
{ {% for panel in aggregate_panels %}
"aliasColors": {}, {{ panel }},
"bars": false, {% endfor %}
"collapsed": null,
"dashLength": 10,
"dashes": false,
"datasource": "{{ datasource }}",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 10,
"gridPos": {
"h": 12,
"w": 12,
"x": 0,
"y": 0
},
"hiddenSeries": false,
"id": 1,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"alertThreshold": true
},
"percentage": false,
"pointradius": 2,
"points": false,
"renderer": "flot",
"search": null,
"seriesOverrides": [],
"spaceLength": 10,
"stack": true,
"steppedLine": false,
"tags": null,
"targets": [
{% for target in ingress_aggregate_targets %}
{{ target }}{{ "," if not loop.last }}
{% endfor %}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Aggregate - {{ nren_name }} - ingress",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": null
},
"yaxes": [
{
"format": "bps",
"label": "bits per second",
"logBase": 1,
"max": null,
"min": "",
"show": true
},
{
"format": "bps",
"label": "bits per second",
"logBase": 1,
"max": null,
"min": "",
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"collapsed": null,
"dashLength": 10,
"dashes": false,
"datasource": "{{ datasource }}",
"fieldConfig": {
"defaults": {
"custom": {}
},
"overrides": []
},
"fill": 1,
"fillGradient": 10,
"gridPos": {
"h": 12,
"w": 12,
"x": 12,
"y": 0
},
"hiddenSeries": false,
"id": 2,
"legend": {
"alignAsTable": true,
"avg": true,
"current": true,
"max": true,
"min": false,
"rightSide": false,
"show": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 1,
"nullPointMode": "null",
"options": {
"alertThreshold": true
},
"percentage": false,
"pointradius": 2,
"points": false,
"renderer": "flot",
"search": null,
"seriesOverrides": [],
"spaceLength": 10,
"stack": true,
"steppedLine": false,
"tags": null,
"targets": [
{% for target in egress_aggregate_targets %}
{{ target }}{{ "," if not loop.last }}
{% endfor %}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Aggregate - {{ nren_name }} - egress",
"tooltip": {
"shared": true,
"sort": 0,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": null
},
"yaxes": [
{
"format": "bps",
"label": "bits per second",
"logBase": 1,
"max": null,
"min": "",
"show": true
},
{
"format": "bps",
"label": "bits per second",
"logBase": 1,
"max": null,
"min": "",
"show": true
}
],
"yaxis": {
"align": false,
"alignLevel": null
}
},
{% for group in dropdown_groups %} {% for group in dropdown_groups %}
{{ group.dropdown }} {{ group.dropdown }}
{% if group.panels|length > 0 %} {% if group.panels|length > 0 %}
......
...@@ -2,6 +2,9 @@ ...@@ -2,6 +2,9 @@
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.15] - 2021-05-17
- [POL1-433] Only provision aggregate panels for NRENs if LAG interfaces are present.
## [0.14] - 2021-04-19 ## [0.14] - 2021-04-19
- [POL1-420] Delete stale dashboards after provisioning. - [POL1-420] Delete stale dashboards after provisioning.
......
...@@ -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.14", version="0.15",
author='GEANT', author='GEANT',
author_email='swd@geant.org', author_email='swd@geant.org',
description='', description='',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment