diff --git a/manifests/e2e_orchestratorservice.yaml b/manifests/e2e_orchestratorservice.yaml index 5f70fdfdac08112650afc7bc50f02a7eedd5a30a..893f3464fabea2d1151c007a612e781d1f999093 100644 --- a/manifests/e2e_orchestratorservice.yaml +++ b/manifests/e2e_orchestratorservice.yaml @@ -44,11 +44,11 @@ spec: - name: WS_IP_HOST value: "nbiservice.tfs-ip.svc.cluster.local" - name: WS_IP_PORT - value: 8761 + value: "8761" - name: WS_E2E_HOST value: "e2e-orchestratorservice.tfs-e2e.svc.cluster.local" - name: WS_E2E_PORT - value: 8762 + value: "8762" readinessProbe: exec: command: ["/bin/grpc_health_probe", "-addr=:10050"] diff --git a/manifests/nbiservice.yaml b/manifests/nbiservice.yaml index a514736c14a9bdd1f64301e5566719bb5ee5c0c7..72cfde514341b0ef89b3b8eb91ab01b23a27c14b 100644 --- a/manifests/nbiservice.yaml +++ b/manifests/nbiservice.yaml @@ -45,7 +45,7 @@ spec: - name: IETF_NETWORK_RENDERER value: "LIBYANG" - name: WS_E2E_PORT - value: 8762 + value: "8762" readinessProbe: exec: command: ["/bin/grpc_health_probe", "-addr=:9090"] diff --git a/manifests/vnt_managerservice.yaml b/manifests/vnt_managerservice.yaml index 2e31c743902da3dd6ab9354f5b7617d4e884751e..62c575139e972d9d7ae26f1218f78f725291cc5b 100644 --- a/manifests/vnt_managerservice.yaml +++ b/manifests/vnt_managerservice.yaml @@ -41,9 +41,9 @@ spec: - name: LOG_LEVEL value: "INFO" - name: WS_IP_PORT - value: 8761 + value: "8761" - name: WS_E2E_PORT - value: 8762 + value: "8762" readinessProbe: exec: command: ["/bin/grpc_health_probe", "-addr=:10080"] diff --git a/src/common/type_checkers/Assertions.py b/src/common/type_checkers/Assertions.py index 90b7d976b0f6fff9d478ce7b40188240a8eea2d6..3934c9d89568be90129bb766c61b55a532d2f0b3 100644 --- a/src/common/type_checkers/Assertions.py +++ b/src/common/type_checkers/Assertions.py @@ -48,6 +48,8 @@ def validate_device_driver_enum(message): 'DEVICEDRIVER_GNMI_OPENCONFIG', 'DEVICEDRIVER_OPTICAL_TFS', 'DEVICEDRIVER_IETF_ACTN', + 'DEVICEDRIVER_OC', + 'DEVICEDRIVER_QKD', ] def validate_device_operational_status_enum(message): @@ -58,6 +60,20 @@ def validate_device_operational_status_enum(message): 'DEVICEOPERATIONALSTATUS_ENABLED' ] +def validate_isolation_level_enum(message): + assert isinstance(message, str) + assert message in [ + 'NO_ISOLATION', + 'PHYSICAL_ISOLATION', + 'LOGICAL_ISOLATION', + 'PROCESS_ISOLATION', + 'PHYSICAL_MEMORY_ISOLATION', + 'PHYSICAL_NETWORK_ISOLATION', + 'VIRTUAL_RESOURCE_ISOLATION', + 'NETWORK_FUNCTIONS_ISOLATION', + 'SERVICE_ISOLATION', + ] + def validate_kpi_sample_types_enum(message): assert isinstance(message, str) assert message in [ @@ -70,6 +86,16 @@ def validate_kpi_sample_types_enum(message): 'KPISAMPLETYPE_LINK_USED_CAPACITY_GBPS', ] +def validate_link_type_enum(message): + assert isinstance(message, str) + assert message in [ + 'LINKTYPE_UNKNOWN', + 'LINKTYPE_COPPER', + 'LINKTYPE_VIRTUAL_COPPER', + 'LINKTYPE_OPTICAL', + 'LINKTYPE_VIRTUAL_OPTICAL', + ] + def validate_service_type_enum(message): assert isinstance(message, str) assert message in [ @@ -79,6 +105,8 @@ def validate_service_type_enum(message): 'SERVICETYPE_TAPI_CONNECTIVITY_SERVICE', 'SERVICETYPE_TE', 'SERVICETYPE_E2E', + 'SERVICETYPE_OPTICAL_CONNECTIVITY', + 'SERVICETYPE_QKD', ] def validate_service_state_enum(message): @@ -148,6 +176,22 @@ def validate_constraint_custom(message): assert 'constraint_value' in message assert isinstance(message['constraint_value'], str) +def validate_constraint_schedule(message): + assert isinstance(message, dict) + assert len(message.keys()) == 2 + assert 'start_timestamp' in message + assert isinstance(message['start_timestamp'], (int, float)) + assert 'duration_days' in message + assert isinstance(message['duration_days'], (int, float)) + +def validate_constraint_endpoint_priority(message): + assert isinstance(message, dict) + assert len(message.keys()) == 2 + assert 'endpoint_id' in message + validate_endpoint_id(message['endpoint_id']) + assert 'priority' in message + assert isinstance(message['priority'], int) + def validate_constraint_sla_capacity(message): assert isinstance(message, dict) assert len(message.keys()) == 1 @@ -172,16 +216,25 @@ def validate_constraint_sla_availability(message): assert isinstance(message['availability'], (int, float)) assert message['availability'] >= 0 and message['availability'] <= 100 +def validate_constraint_sla_isolation(message): + assert isinstance(message, dict) + assert len(message.keys()) == 1 + assert 'isolation_level' in message + assert isinstance(message['isolation_level'], list) + for isolation_level in message['isolation_level']: + validate_isolation_level_enum(isolation_level) + CONSTRAINT_TYPE_TO_VALIDATOR = { 'custom' : validate_constraint_custom, - #'schedule' : validate_constraint_schedule, + 'schedule' : validate_constraint_schedule, #'endpoint_location' : validate_constraint_endpoint_location, - #'endpoint_priority' : validate_constraint_endpoint_priority, + 'endpoint_priority' : validate_constraint_endpoint_priority, 'sla_capacity' : validate_constraint_sla_capacity, 'sla_latency' : validate_constraint_sla_latency, 'sla_availability' : validate_constraint_sla_availability, - #'sla_isolation' : validate_constraint_sla_isolation, + 'sla_isolation' : validate_constraint_sla_isolation, #'exclusions' : validate_constraint_exclusions, + #'qos_profile' : validate_constraint_qos_profile, } def validate_constraint(message): @@ -479,7 +532,7 @@ def validate_device(message): def validate_link(message): assert isinstance(message, dict) - assert len(message.keys()) == 4 + assert len(message.keys()) == 5 assert 'link_id' in message validate_link_id(message['link_id']) assert 'name' in message @@ -489,6 +542,8 @@ def validate_link(message): for endpoint_id in message['link_endpoint_ids']: validate_endpoint_id(endpoint_id) assert 'attributes' in message validate_link_attributes(message['attributes']) + assert 'link_type' in message + validate_link_type_enum(message['link_type']) def validate_connection(message): assert isinstance(message, dict) diff --git a/src/e2e_orchestrator/.gitlab-ci.yml b/src/e2e_orchestrator/.gitlab-ci.yml index ecc17f26119e40659d6191e88e26a4000c9d9ada..0930be486cce13706292a48c6e6e01c60228f061 100644 --- a/src/e2e_orchestrator/.gitlab-ci.yml +++ b/src/e2e_orchestrator/.gitlab-ci.yml @@ -13,9 +13,9 @@ # limitations under the License. # build, tag and push the Docker image to the gitlab registry -build e2eorchestrator: +build e2e_orchestrator: variables: - IMAGE_NAME: 'e2eorchestrator' # name of the microservice + IMAGE_NAME: 'e2e_orchestrator' # name of the microservice IMAGE_TAG: 'latest' # tag of the container image (production, development, etc) stage: build before_script: diff --git a/src/nbi/service/context_subscription/__init__.py b/src/nbi/service/context_subscription/__init__.py index f0d8d7d4229b30d05a1c960d32fb337653be3706..d2ae85070eb5b5352db9690179b098cdb9781de0 100644 --- a/src/nbi/service/context_subscription/__init__.py +++ b/src/nbi/service/context_subscription/__init__.py @@ -34,7 +34,7 @@ vnt_manager_client: VNTManagerClient = VNTManagerClient() context_client: ContextClient = ContextClient() ALL_HOSTS = "0.0.0.0" -WS_E2E_PORT = str(get_setting('WS_E2E_PORT')) +WS_E2E_PORT = int(get_setting('WS_E2E_PORT', default='8762')) LOGGER = logging.getLogger(__name__) diff --git a/src/tests/.gitlab-ci.yml b/src/tests/.gitlab-ci.yml index e7d96f298323f4698f5cf9ce89789788677d39f6..808aebf2173361e05fee5ed2806b9c7aa6362753 100644 --- a/src/tests/.gitlab-ci.yml +++ b/src/tests/.gitlab-ci.yml @@ -20,4 +20,4 @@ include: #- local: '/src/tests/nfvsdn22/.gitlab-ci.yml' #- local: '/src/tests/ofc23/.gitlab-ci.yml' - local: '/src/tests/ofc24/.gitlab-ci.yml' - - local: '/src/tests/ecoc24/.gitlab-ci.yml' + #- local: '/src/tests/ecoc24/.gitlab-ci.yml' diff --git a/src/vnt_manager/.gitlab-ci.yml b/src/vnt_manager/.gitlab-ci.yml index b338f97ac8a517abbfbdc5112bd54d5d6545afd1..2566df2387776356b61609b51501b41c167b140a 100644 --- a/src/vnt_manager/.gitlab-ci.yml +++ b/src/vnt_manager/.gitlab-ci.yml @@ -13,9 +13,9 @@ # limitations under the License. # build, tag and push the Docker image to the gitlab registry -build vntmanager: +build vnt_manager: variables: - IMAGE_NAME: 'vntmanager' # name of the microservice + IMAGE_NAME: 'vnt_manager' # name of the microservice IMAGE_TAG: 'latest' # tag of the container image (production, development, etc) stage: build before_script: