Skip to content
Snippets Groups Projects
Constants.py 5.28 KiB
Newer Older
  • Learn to ignore specific revisions
  • # Copyright 2022-2024 ETSI OSG/SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/)
    
    #
    # 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
    #
    #      http://www.apache.org/licenses/LICENSE-2.0
    #
    # Unless required by applicable law or agreed to in writing, software
    # distributed under the License is distributed on an "AS IS" BASIS,
    # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    # See the License for the specific language governing permissions and
    # limitations under the License.
    
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    import logging
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    from enum import Enum
    
    # Default logging level
    
    Pablo Armingol's avatar
    Pablo Armingol committed
    DEFAULT_LOG_LEVEL = logging.WARNING
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    
    # Default gRPC server settings
    DEFAULT_GRPC_BIND_ADDRESS = '0.0.0.0'
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    DEFAULT_GRPC_MAX_WORKERS  = 200
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    DEFAULT_GRPC_GRACE_PERIOD = 10
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    
    # Default HTTP server settings
    DEFAULT_HTTP_BIND_ADDRESS = '0.0.0.0'
    
    # Default Prometheus settings
    DEFAULT_METRICS_PORT = 9192
    
    # Default context and topology UUIDs
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    DEFAULT_CONTEXT_NAME      = 'admin'
    DEFAULT_TOPOLOGY_NAME     = 'admin'     # contains the detailed local topology
    INTERDOMAIN_TOPOLOGY_NAME = 'inter'     # contains the abstract inter-domain topology
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    
    # Default service names
    class ServiceNameEnum(Enum):
    
        AUTOMATION             = 'automation'
    
        CONTEXT                = 'context'
        DEVICE                 = 'device'
        SERVICE                = 'service'
        SLICE                  = 'slice'
    
        POLICY                 = 'policy'
        MONITORING             = 'monitoring'
        DLT                    = 'dlt'
    
        CYBERSECURITY          = 'cybersecurity'
        INTERDOMAIN            = 'interdomain'
        PATHCOMP               = 'pathcomp'
    
        L3_AM                  = 'l3-attackmitigator'
        L3_CAD                 = 'l3-centralizedattackdetector'
    
        WEBUI                  = 'webui'
        DBSCANSERVING          = 'dbscanserving'
        OPTICALATTACKMANAGER   = 'opticalattackmanager'
        OPTICALATTACKDETECTOR  = 'opticalattackdetector'
        OPTICALATTACKMITIGATOR = 'opticalattackmitigator'
        CACHING                = 'caching'
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
        TE                     = 'te'
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
        FORECASTER             = 'forecaster'
    
    Carlos Manso's avatar
    Carlos Manso committed
        E2EORCHESTRATOR        = 'e2e-orchestrator'
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
        OPTICALCONTROLLER      = 'opticalcontroller'
    
    Carlos Manso's avatar
    Carlos Manso committed
        VNTMANAGER             = 'vnt-manager'
    
    Pablo Armingol's avatar
    Pablo Armingol committed
        BGPLS                  = 'bgpls-speaker'
    
    Waleed Akbar's avatar
    Waleed Akbar committed
        KPIMANAGER             = 'kpi-manager'
        KPIVALUEAPI            = 'kpi-value-api'
        KPIVALUEWRITER         = 'kpi-value-writer'
    
        TELEMETRYBACKEND       = 'telemetry-backend'
    
        ANALYTICSBACKEND       = 'analytics-backend'
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
        # Used for test and debugging only
    
        DLT_GATEWAY    = 'dltgateway'
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
        LOAD_GENERATOR = 'load-generator'
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    # Default gRPC service ports
    DEFAULT_SERVICE_GRPC_PORTS = {
    
        ServiceNameEnum.CONTEXT                .value :  1010,
        ServiceNameEnum.DEVICE                 .value :  2020,
        ServiceNameEnum.SERVICE                .value :  3030,
        ServiceNameEnum.SLICE                  .value :  4040,
    
        ServiceNameEnum.ZTP                    .value :  5050,
    
        ServiceNameEnum.POLICY                 .value :  6060,
        ServiceNameEnum.MONITORING             .value :  7070,
        ServiceNameEnum.DLT                    .value :  8080,
    
        ServiceNameEnum.NBI                    .value :  9090,
    
        ServiceNameEnum.L3_CAD                 .value : 10001,
        ServiceNameEnum.L3_AM                  .value : 10002,
    
        ServiceNameEnum.DBSCANSERVING          .value : 10008,
        ServiceNameEnum.OPTICALATTACKDETECTOR  .value : 10006,
        ServiceNameEnum.OPTICALATTACKMITIGATOR .value : 10007,
        ServiceNameEnum.OPTICALATTACKMANAGER   .value : 10005,
        ServiceNameEnum.INTERDOMAIN            .value : 10010,
        ServiceNameEnum.PATHCOMP               .value : 10020,
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
        ServiceNameEnum.TE                     .value : 10030,
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
        ServiceNameEnum.FORECASTER             .value : 10040,
    
        ServiceNameEnum.E2EORCHESTRATOR        .value : 10050,
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
        ServiceNameEnum.OPTICALCONTROLLER      .value : 10060,
    
        ServiceNameEnum.VNTMANAGER             .value : 10080,
    
    Pablo Armingol's avatar
    Pablo Armingol committed
        ServiceNameEnum.BGPLS                  .value : 20030,
    
        ServiceNameEnum.QOSPROFILE             .value : 20040,
    
    Waleed Akbar's avatar
    Waleed Akbar committed
        ServiceNameEnum.KPIMANAGER             .value : 30010,
        ServiceNameEnum.KPIVALUEAPI            .value : 30020,
    
    Waleed Akbar's avatar
    Waleed Akbar committed
        ServiceNameEnum.KPIVALUEWRITER         .value : 30030,
    
        ServiceNameEnum.TELEMETRY              .value : 30050,
    
        ServiceNameEnum.TELEMETRYBACKEND       .value : 30060,
    
        ServiceNameEnum.ANALYTICS              .value : 30080,
    
        ServiceNameEnum.ANALYTICSBACKEND       .value : 30090,
    
        ServiceNameEnum.AUTOMATION             .value : 30200,
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    
        # Used for test and debugging only
    
        ServiceNameEnum.DLT_GATEWAY   .value : 50051,
        ServiceNameEnum.LOAD_GENERATOR.value : 50052,
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    }
    
    # Default HTTP/REST-API service ports
    DEFAULT_SERVICE_HTTP_PORTS = {
    
        ServiceNameEnum.NBI  .value : 8080,
        ServiceNameEnum.WEBUI.value : 8004,
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    }
    
    # Default HTTP/REST-API service base URLs
    DEFAULT_SERVICE_HTTP_BASEURLS = {
    
        ServiceNameEnum.NBI  .value : None,
        ServiceNameEnum.WEBUI.value : None,
    
    Lluis Gifre Renom's avatar
    Lluis Gifre Renom committed
    }