tosca_definitions_version: tosca_simple_yaml_1_0

imports:
   - custom_types/xos.yaml
   - custom_types/vee.yaml
   - custom_types/veg.yaml
   - custom_types/vnodlocal.yaml

description: vee services, generated by platform-install

topology_template:
  node_templates:

    service#ONOS_Fabric:
      type: tosca.nodes.ONOSService
      properties:
        no-delete: true
        no-create: true
        no-update: true

    service#veg:
      type: tosca.nodes.VEGService
      requirements:
      properties:
        no-delete: true
        no-create: true
        no-update: true
      artifacts:
        pubkey: /opt/xos/services/veg/keys/veg_rsa.pub

    service#vnodlocal:
      type: tosca.nodes.VNodLocalService
      properties:
        no-delete: true
        no-create: true
        no-update: true
      requirements:

    service#vee:
      type: tosca.nodes.VEEService
      requirements:
          - veg_tenant:
              node: service#veg
              relationship: tosca.relationships.TenantOfService
          - vnodlocal_tenant:
              node: service#vnodlocal
              relationship: tosca.relationships.TenantOfService
      properties:
        view_url: /admin/vEE/veeservice/$id$/

    template#vee:
      type: tosca.nodes.NetworkTemplate
      properties:
        visibility: private
        translation: none
        vtn_kind: vee

    CarrierEthernet_ONOS_app:
      type: tosca.nodes.ONOSApp
      requirements:
        - onos_tenant:
            node: service#ONOS_Fabric
            relationship: tosca.relationships.TenantOfService
        - vee_service:
            node: service#vee
            relationship: tosca.relationships.UsedByService
      properties:
        dependencies: org.onosproject.drivers, org.onosproject.openflow-base, org.onosproject.ecord.carrierethernet

