Commit c98b136b authored by Carlos Manso's avatar Carlos Manso
Browse files

update

parent aa273225
Loading
Loading
Loading
Loading
+1 −13
Original line number Diff line number Diff line
@@ -41,7 +41,7 @@ spec:
            - containerPort: 8762
          env:
            - name: LOG_LEVEL
              value: "INFO"
              value: "DEBUG"
          readinessProbe:
            exec:
              command: ["/bin/grpc_health_probe", "-addr=:9090"]
@@ -83,15 +83,3 @@ spec:
      protocol: TCP
      port: 8762
      targetPort: 8762
---
apiVersion: v1
kind: Service
metadata:
  name: remote-teraflow
spec:
  type: ExternalName
  externalName: nbiservice.asdf.svc.cluster.local
  ports:
  - name: ws
    protocol: TCP
    port: 8762
+1 −0
Original line number Diff line number Diff line
@@ -259,6 +259,7 @@ message Link {
  string name = 2;
  repeated EndPointId link_endpoint_ids = 3;
  LinkAttributes attributes = 4;
  bool virtual = 5;
}

message LinkIdList {
+1 −0
Original line number Diff line number Diff line
@@ -79,6 +79,7 @@ RUN python3 -m pip install -r e2e_orchestrator/requirements.txt
# Add component files into working directory
COPY --chown=teraflow:teraflow ./src/context/. context
COPY --chown=teraflow:teraflow ./src/e2e_orchestrator/. e2e_orchestrator
COPY --chown=teraflow:teraflow ./src/service/. service

# Start the service
ENTRYPOINT ["python", "-m", "e2e_orchestrator.service"]
+15 −7
Original line number Diff line number Diff line
@@ -15,9 +15,10 @@
import copy
from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method
from common.proto.e2eorchestrator_pb2 import E2EOrchestratorRequest, E2EOrchestratorReply
from common.proto.context_pb2 import Empty, Connection, EndPointId, Link, LinkId, TopologyDetails, TopologyId, Device, Topology, Context
from common.proto.context_pb2 import Empty, Connection, EndPointId, Link, LinkId, TopologyDetails, TopologyId, Device, Topology, Context, Service
from common.proto.e2eorchestrator_pb2_grpc import E2EOrchestratorServiceServicer
from context.client.ContextClient import ContextClient
from service.client.ServiceClient import ServiceClient
from context.service.database.uuids.EndPoint import endpoint_get_uuid
from common.proto.vnt_manager_pb2 import VNTSubscriptionRequest
from common.tools.grpc.Tools import grpc_message_to_json_string
@@ -37,7 +38,7 @@ METRICS_POOL = MetricsPool("E2EOrchestrator", "RPC")


context_client: ContextClient = ContextClient()

service_client: ServiceClient = ServiceClient()

EXT_HOST = "nbiservice.tfs-ip.svc.cluster.local"
EXT_PORT = "8762"
@@ -51,12 +52,17 @@ def _event_received(websocket):
        message_json = json.loads(message)

        if 'link_id' in message_json:
            obj = Link(**message_json)
            if _check_policies(obj):
                pass
            link = Link(**message_json)

            service = Service()
            service.service_id = link.link_id.link_uuid
            service.serivice_type = 2 # Optical
            service.service_status = 1
            
            # service_client.CreateService(service)

            websocket.send(message)

        elif 'link_uuid' in message_json:
            obj = LinkId(**message_json)

        else:
            topology_details = TopologyDetails(**message_json)
@@ -72,9 +78,11 @@ def _event_received(websocket):
            context_client.SetTopology(topology)

            for device in topology_details.devices:
                LOGGER.info('Setting Device: {}'.format(device))
                context_client.SetDevice(device)

            for link in topology_details.links:
                LOGGER.info('Setting Link: {}'.format(link))
                context_client.SetLink(link)


+22 −6
Original line number Diff line number Diff line
@@ -20,11 +20,17 @@ from common.tools.grpc.Tools import grpc_message_to_json
from context.client.ContextClient import ContextClient
from service.client.ServiceClient import ServiceClient
from vnt_manager.client.VNTManagerClient import VNTManagerClient
import logging



from .Tools import (
    format_grpc_to_json, grpc_connection_id, grpc_context_id, grpc_device_id, grpc_link, grpc_link_id, grpc_policy_rule_id,
    grpc_service_id, grpc_service, grpc_slice_id, grpc_topology_id)

LOGGER = logging.getLogger(__name__)


class _Resource(Resource):
    def __init__(self) -> None:
        super().__init__()
@@ -198,16 +204,26 @@ class VirtualLinks(_Resource):
        return format_grpc_to_json(self.vntmanager_client.ListVirtualLinks(Empty()))

class VirtualLink(_Resource):
    def get(self, link_uuid : str):
        return format_grpc_to_json(self.vntmanager_client.GetVirtualLink(grpc_link_id(link_uuid)))
    def post(self):
    def get(self, virtual_link_uuid : str):
        return format_grpc_to_json(self.vntmanager_client.GetVirtualLink(grpc_link_id(virtual_link_uuid)))
    def post(self, virtual_link_uuid : str):  # pylint: disable=unused-argument
        link = request.get_json()
        LOGGER.info('---------------------------LINK received------------------------------')
        LOGGER.info(link)
        LOGGER.info('----------------------------------------------------------------------')
        LOGGER.info(link['link_id'])
        LOGGER.info('type: {}'.format(type(link['link_id']))) 
        LOGGER.info('---------------------------LINK received------------------------------')
        link = grpc_link(link)



        return format_grpc_to_json(self.vntmanager_client.SetVirtualLink(grpc_link(link)))
    def put(self):
    def put(self, virtual_link_uuid : str):  # pylint: disable=unused-argument
        link = request.get_json()
        return format_grpc_to_json(self.vntmanager_client.SetVirtualLink(grpc_link(link)))
    def delete(self, link_uuid : str):
        return format_grpc_to_json(self.vntmanager_client.RemoveVirtualLink(grpc_link_id(link_uuid)))
    def delete(self, virtual_link_uuid : str):
        return format_grpc_to_json(self.vntmanager_client.RemoveVirtualLink(grpc_link_id(virtual_link_uuid)))

class ConnectionIds(_Resource):
    def get(self, context_uuid : str, service_uuid : str):
Loading