-# Copyright (c) 2022 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
BRAND = "CSIT-Dash"
# The application description.
- DESCRIPTION = 'Performance Dashboard "CSIT-Dash"'
+ DESCRIPTION = "Performance Dashboard"
# External stylesheets.
EXTERNAL_STYLESHEETS = ["/static/dist/css/bootstrap.css", ]
- # Top level template for all pages.
- TEMPLATE = "d-flex h-100 text-center text-white bg-dark"
+ # URL to Jenkins
+ URL_JENKINS = "https://jenkins.fd.io/job/"
+
+ # URL to the documentation
+ URL_DOC_TRENDING = "https://csit.fd.io/cdocs/methodology/trending/analysis/"
+ URL_DOC_REL_NOTES = "https://csit.fd.io/cdocs/release_notes/csit_rls2306/"
# Path and name of the file specifying the HTML layout of the dash
# application.
- MAIN_HTML_LAYOUT_FILE = "index_layout.jinja2"
+ MAIN_HTML_LAYOUT_FILE = "base_layout.jinja2"
# Path and name of the file specifying the HTML layout of the dash
# application.
# Maximal value of TIME_PERIOD for data read from the parquets in days.
# Do not change without a good reason.
- MAX_TIME_PERIOD = 180
+ MAX_TIME_PERIOD = 130
# It defines the time period for data read from the parquets in days from
# now back to the past.
# TIME_PERIOD = MAX_TIME_PERIOD - is the default value
TIME_PERIOD = MAX_TIME_PERIOD # [days]
- # List of releases used for iterative data processing.
- # The releases MUST be in the order from the current (newest) to the last
- # (oldest).
- RELEASES = ["csit2210", "csit2206", "csit2202", ]
-
############################################################################
# General, application wide, layout affecting constants.
+ # Add a time delay (in ms) to the spinner being shown
+ SPINNER_DELAY = 500
+
# If True, clear all inputs in control panel when button "ADD SELECTED" is
# pressed.
CLEAR_ALL_INPUTS = False
# The element is disabled.
- STYLE_DISABLED = {"display": "none"}
+ STYLE_DISABLED = {"visibility": "hidden"}
# The element is enabled and visible.
- STYLE_ENABLED = {"display": "inherit"}
+ STYLE_ENABLED = {"visibility": "visible"}
# Checklist "All" is disabled.
CL_ALL_DISABLED = [
}
]
- # Checklist "All" is enable, visible and unchecked.
+ # Checklist "All" is enabled, visible and unchecked.
CL_ALL_ENABLED = [
{
"label": "All",
PLACEHOLDER = html.Nobr("")
# List of drivers used in CSIT.
- DRIVERS = ("avf", "af-xdp", "rdma", "dpdk")
+ DRIVERS = ("avf", "af-xdp", "rdma", "dpdk", "mlx5")
# Labels for input elements (dropdowns, ...).
LABELS = {
"container_memif": "LXC/DRC Container Memif",
"crypto": "IPSec IPv4 Routing",
"ip4": "IPv4 Routing",
- "ip6": "IPv6 Routing",
"ip4_tunnels": "IPv4 Tunnels",
+ "ip6": "IPv6 Routing",
+ "ip6_tunnels": "IPv6 Tunnels",
"l2": "L2 Ethernet Switching",
+ "lb": "Load Balancer",
"srv6": "SRv6 Routing",
"vm_vhost": "VMs vhost-user",
- "nfv_density-dcr_memif-chain_ipsec": "CNF Service Chains Routing IPSec",
- "nfv_density-vm_vhost-chain_dot1qip4vxlan":"VNF Service Chains Tunnels",
- "nfv_density-vm_vhost-chain": "VNF Service Chains Routing",
- "nfv_density-dcr_memif-pipeline": "CNF Service Pipelines Routing",
- "nfv_density-dcr_memif-chain": "CNF Service Chains Routing",
+ "nfv_density.dcr_memif.chain_ipsec": "CNF Service Chains Routing IPSec",
+ "nfv_density.vm_vhost.chain_dot1qip4vxlan":"VNF Service Chains Tunnels",
+ "nfv_density.vm_vhost.chain": "VNF Service Chains Routing",
+ "nfv_density.dcr_memif.pipeline": "CNF Service Pipelines Routing",
+ "nfv_density.dcr_memif.chain": "CNF Service Chains Routing",
+ "hoststack": "Hoststack",
+ "flow": "Flow",
+ "l2bd": "L2 Bridge Domain",
+ "crypto.ethip4": "IPSec IPv4 Routing",
+ "crypto.ethip6": "IPSec IPv6 Routing",
+ "interfaces": "Interfaces",
+ "ip4_tunnels.lisp": "IPv4 Tunnels LISP",
+ "ip6_tunnels.lisp": "IPv6 Tunnels LISP",
+ "l2patch": "L2 Patch",
+ "l2xc": "L2 Cross Connect",
+ "vm_vhost.ethip4": "VMs vhost-user IPv4 Routing",
+ "vm_vhost.ethip6": "VMs vhost-user IPv6 Routing"
}
# URL style.
NORM_FREQUENCY = 2.0 # [GHz]
FREQUENCY = { # [GHz]
+ "1n-aws": 1.000,
"2n-aws": 1.000,
"2n-dnv": 2.000,
"2n-clx": 2.300,
"2n-icx": 2.600,
"2n-skx": 2.500,
+ "2n-spr": 2.800,
"2n-tx2": 2.500,
"2n-zn2": 2.900,
"3n-alt": 3.000,
"3n-dnv": 2.000,
"3n-icx": 2.600,
"3n-skx": 2.500,
- "3n-tsh": 2.200
+ "3n-tsh": 2.200,
+ "3n-snr": 2.200,
+ "3na-spr": 2.800,
+ "3nb-spr": 2.800
}
############################################################################
- # General, plots constants.
+ # General, plots and tables constants.
PLOT_COLORS = (
"#1A1110", "#DA2647", "#214FC6", "#01786F", "#BD8260", "#FFD12A",
"mrr": "result_receive_rate_rate_avg",
"ndr": "result_ndr_lower_rate_value",
"pdr": "result_pdr_lower_rate_value",
- "pdr-lat": "result_latency_forward_pdr_50_avg"
+ "latency": "result_latency_forward_pdr_50_avg",
+ "hoststack-cps": "result_rate_value",
+ "hoststack-rps": "result_rate_value",
+ "hoststack-bps": "result_bandwidth_value",
+ "hoststack-latency": "result_latency_value"
}
VALUE_ITER = {
"mrr": "result_receive_rate_rate_values",
"ndr": "result_ndr_lower_rate_value",
"pdr": "result_pdr_lower_rate_value",
- "pdr-lat": "result_latency_forward_pdr_50_avg"
+ "latency": "result_latency_forward_pdr_50_avg",
+ "hoststack-cps": "result_rate_value",
+ "hoststack-rps": "result_rate_value",
+ "hoststack-bps": "result_bandwidth_value",
+ "hoststack-latency": "result_latency_value"
}
UNIT = {
"mrr": "result_receive_rate_rate_unit",
"ndr": "result_ndr_lower_rate_unit",
"pdr": "result_pdr_lower_rate_unit",
- "pdr-lat": "result_latency_forward_pdr_50_unit"
+ "latency": "result_latency_forward_pdr_50_unit",
+ "hoststack-cps": "result_rate_unit",
+ "hoststack-rps": "result_rate_unit",
+ "hoststack-bps": "result_bandwidth_unit",
+ "hoststack-latency": "result_latency_unit"
}
# Latencies.
"result_latency_reverse_pdr_90_hdrh": "High-load, 90% PDR."
}
+ # Operators used to filter data in comparison tables.
+ OPERATORS = (
+ ("contains ", ),
+ ("lt ", "<"),
+ ("gt ", ">"),
+ ("eq ", "="),
+ ("ge ", ">="),
+ ("le ", "<="),
+ ("ne ", "!="),
+ ("datestartswith ", )
+ )
+
############################################################################
# News.
# The title.
- NEWS_TITLE = "CI TEST FAILURE AND ANOMALY STATISTICS"
+ NEWS_TITLE = "Failures and Anomalies"
# The pathname prefix for the application.
NEWS_ROUTES_PATHNAME_PREFIX = "/news/"
# Report.
# The title.
- REPORT_TITLE = "PER RELEASE PERFORMANCE RESULTS"
+ REPORT_TITLE = "Per Release Performance"
# The pathname prefix for the application.
REPORT_ROUTES_PATHNAME_PREFIX = "/report/"
# Default name of downloaded file with selected data.
REPORT_DOWNLOAD_FILE_NAME = "iterative_data.csv"
+ ############################################################################
+ # Comparisons.
+
+ # The title.
+ COMP_TITLE = "Per Release Performance Comparisons"
+
+ # The pathname prefix for the application.
+ COMP_ROUTES_PATHNAME_PREFIX = "/comparisons/"
+
+ # Default name of downloaded file with selected data.
+ COMP_DOWNLOAD_FILE_NAME = "comparison_data.csv"
+
############################################################################
# Statistics.
# The title.
- STATS_TITLE = "CI JOB EXECUTION STATISTICS"
+ STATS_TITLE = "Test Job Statistics"
# The pathname prefix for the application.
STATS_ROUTES_PATHNAME_PREFIX = "/stats/"
- # Path and name of the file specifying the HTML layout of the dash
- # application.
- STATS_HTML_LAYOUT_FILE = "cdash/templates/stats_layout.jinja2"
-
# Layout of plot.ly graphs.
STATS_GRAPH_LAYOUT_FILE = "cdash/stats/layout.yaml"
# Trending.
# The title.
- TREND_TITLE = "PERFORMANCE TRENDING (DAILY, WEEKLY)"
+ TREND_TITLE = "Performance Trending"
# The pathname prefix for the application.
TREND_ROUTES_PATHNAME_PREFIX = "/trending/"
- # Path and name of the file specifying the HTML layout of the dash
- # application.
- TREND_HTML_LAYOUT_FILE = "cdash/templates/trending_layout.jinja2"
-
# Layout of plot.ly graphs.
TREND_GRAPH_LAYOUT_FILE = "cdash/trending/layout.yaml"
# Default name of downloaded file with selected data.
TREND_DOWNLOAD_FILE_NAME = "trending_data.csv"
+ TELEMETRY_DOWNLOAD_FILE_NAME = "telemetry_data.csv"
+
+ ############################################################################
+ # Coverage data.
+
+ # The title.
+ COVERAGE_TITLE = "Per Release Coverage Data"
+
+ # The pathname prefix for the application.
+ COVERAGE_ROUTES_PATHNAME_PREFIX = "/coverage/"
+
+ # Default name of downloaded file with selected data.
+ COVERAGE_DOWNLOAD_FILE_NAME = "coverage_data.csv"
+
+ ############################################################################
\ No newline at end of file