C-Dash: Remove unused testbeds
[csit.git] / csit.infra.dash / app / cdash / utils / constants.py
index 4eb52d2..4ffd7c1 100644 (file)
@@ -44,6 +44,13 @@ class Constants:
     # External stylesheets.
     EXTERNAL_STYLESHEETS = ["/static/dist/css/bootstrap.css", ]
 
+    # 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/current/"
+
     # Path and name of the file specifying the HTML layout of the dash
     # application.
     MAIN_HTML_LAYOUT_FILE = "base_layout.jinja2"
@@ -58,12 +65,15 @@ class Constants:
     # Data to be downloaded from the parquets specification file.
     DATA_SPEC_FILE = "cdash/data/data.yaml"
 
+    # Path to schemas to use when reading data from the parquet.
+    PATH_TO_SCHEMAS = "cdash/data/_metadata/"
+
     # The file with tooltips.
     TOOLTIP_FILE = "cdash/utils/tooltips.yaml"
 
     # Maximal value of TIME_PERIOD for data read from the parquets in days.
     # Do not change without a good reason.
-    MAX_TIME_PERIOD = 130
+    MAX_TIME_PERIOD = 250
 
     # It defines the time period for data read from the parquets in days from
     # now back to the past.
@@ -82,10 +92,10 @@ class Constants:
     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 = [
@@ -116,18 +126,32 @@ class Constants:
         "dpdk": "DPDK",
         "container_memif": "LXC/DRC Container Memif",
         "crypto": "IPSec IPv4 Routing",
+        "gso": "GSO",
         "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",
-        "hoststack": "Hoststack"
+        "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.
@@ -142,24 +166,25 @@ class Constants:
 
     NORM_FREQUENCY = 2.0  # [GHz]
     FREQUENCY = {  # [GHz]
-        "2n-aws": 1.000,
-        "2n-dnv": 2.000,
+        "1n-aws": 3.400,
+        "2n-aws": 3.400,
+        "2n-c6in": 3.500,
         "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-aws": 1.000,
-        "3n-dnv": 2.000,
         "3n-icx": 2.600,
-        "3n-skx": 2.500,
+        "3n-icxd": 2.000,
+        "3n-snr": 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",
@@ -202,30 +227,46 @@ class Constants:
         "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",
-        "cps": "result_bandwidth_value",
-        "rps": "result_bandwidth_value",
-        "bps": "result_bandwidth_value"
+        "mrr-bandwidth": "result_receive_rate_bandwidth_avg",
+        "ndr-bandwidth": "result_ndr_lower_bandwidth_value",
+        "pdr-bandwidth": "result_pdr_lower_bandwidth_value",
+        "latency": "result_latency_forward_pdr_50_avg",
+        "hoststack-cps": "result_rate_value",
+        "hoststack-rps": "result_rate_value",
+        "hoststack-cps-bandwidth": "result_bandwidth_value",
+        "hoststack-rps-bandwidth": "result_bandwidth_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",
-        "cps": "result_bandwidth_value",
-        "rps": "result_bandwidth_value",
-        "bps": "result_bandwidth_value"
+        "mrr-bandwidth": "result_receive_rate_bandwidth_avg",
+        "ndr-bandwidth": "result_ndr_lower_bandwidth_value",
+        "pdr-bandwidth": "result_pdr_lower_bandwidth_value",
+        "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",
-        "cps": "result_bandwidth_unit",
-        "rps": "result_bandwidth_unit",
-        "bps": "result_bandwidth_unit"
+        "mrr-bandwidth": "result_receive_rate_bandwidth_unit",
+        "ndr-bandwidth": "result_ndr_lower_bandwidth_unit",
+        "pdr-bandwidth": "result_pdr_lower_bandwidth_unit",
+        "latency": "result_latency_forward_pdr_50_unit",
+        "hoststack-cps": "result_rate_unit",
+        "hoststack-rps": "result_rate_unit",
+        "hoststack-cps-bandwidth": "result_bandwidth_unit",
+        "hoststack-rps-bandwidth": "result_bandwidth_unit",
+        "hoststack-bps": "result_bandwidth_unit",
+        "hoststack-latency": "result_latency_unit"
     }
 
     # Latencies.
@@ -255,6 +296,18 @@ class Constants:
         "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.
 
@@ -287,6 +340,18 @@ class Constants:
     # 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.
 
@@ -305,6 +370,10 @@ class Constants:
     # Default name of downloaded file with selected data.
     STATS_DOWNLOAD_FILE_NAME = "stats.csv"
 
+    # The width of the bar in the graph in miliseconds.
+    STATS_BAR_WIDTH_DAILY = 1000 * 3600 * 15
+    STATS_BAR_WIDTH_WEEKLY = 1000 * 3600 * 24
+
     ############################################################################
     # Trending.
 
@@ -319,3 +388,18 @@ class Constants:
 
     # 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"
+
+    ############################################################################