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
Branches
Tags 0.14
No related merge requests found
......@@ -5,8 +5,7 @@ from concurrent.futures import ProcessPoolExecutor
from brian_dashboard_manager.templating.render import create_dropdown_panel
from brian_dashboard_manager.templating.helpers import \
is_aggregate_interface, is_logical_interface, is_physical_interface, \
num_generator, gridPos_generator, get_aggregate_targets, \
get_panel_fields
num_generator, gridPos_generator, get_panel_fields, create_aggregate_panel
def get_nrens(interfaces):
......@@ -58,9 +57,7 @@ def get_nrens(interfaces):
return result
# start IDs from 3 since aggregate
# panels have hardcoded IDs (1, 2).
id_gen = num_generator(start=3)
id_gen = num_generator(start=1)
# aggregate panels have y=0, start generating at 1*height
gridPos = gridPos_generator(id_gen, start=1)
......@@ -81,7 +78,16 @@ def get_panel_definitions(panels, datasource, errors=False):
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))
service_panels = get_panel_definitions(data['SERVICES'], datasource)
iface_dropdown = create_dropdown_panel('Interfaces', **next(gridPos))
......@@ -90,8 +96,7 @@ def build_data(nren, data, datasource):
return {
'nren_name': nren,
'datasource': datasource,
'ingress_aggregate_targets': agg_ingress,
'egress_aggregate_targets': agg_egress,
'aggregate_panels': agg_panels,
'dropdown_groups': [
{
'dropdown': services_dropdown,
......
......@@ -31,198 +31,9 @@
"version": 1,
"links": [],
"panels": [
{
"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": 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 panel in aggregate_panels %}
{{ panel }},
{% endfor %}
{% for group in dropdown_groups %}
{{ group.dropdown }}
{% if group.panels|length > 0 %}
......
......@@ -2,6 +2,9 @@
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
- [POL1-420] Delete stale dashboards after provisioning.
......
......@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
setup(
name='brian-dashboard-manager',
version="0.14",
version="0.15",
author='GEANT',
author_email='swd@geant.org',
description='',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment