# Copyright 2017-present Open Networking Foundation
#
# 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.

# curl -H "xos-username: admin@opencord.org" -H "xos-password: letmein" -X POST --data-binary @onlab-pod1-fabric.yaml http://10.90.0.101:30007/run

tosca_definitions_version: tosca_simple_yaml_1_0
imports:
  - custom_types/switch.yaml
  - custom_types/switchport.yaml
  - custom_types/portinterface.yaml
  - custom_types/bngportmapping.yaml
  - custom_types/attworkflowdriverwhitelistentry.yaml
  - custom_types/attworkflowdriverservice.yaml
  - custom_types/serviceinstanceattribute.yaml
  - custom_types/onosapp.yaml

description: Configures the fabric and the whitelist

topology_template:
  node_templates:
    switch#agg_sw:
      type: tosca.nodes.Switch
      properties:
        driver: ofdpa3
        ipv4Loopback: 192.168.0.201
        ipv4NodeSid: 17
        isEdgeRouter: True
        name: AGG SWITCH
        ofId: of:0000000000000001
        routerMac: 00:00:02:01:06:01

    # Setup the EdgeCore OLT switch port
    port#edgecore_olt_port:
      type: tosca.nodes.SwitchPort
      properties:
        portId: 49
        host_learning: false
      requirements:
        - switch:
            node: switch#agg_sw
            relationship: tosca.relationships.BelongsToOne

    Setup the Adtran OLT switch port
    port#adtran_olt_port:
      type: tosca.nodes.SwitchPort
      properties:
        portId: 50
        host_learning: false
      requirements:
        - switch:
            node: switch#agg_sw
            relationship: tosca.relationships.BelongsToOne

    # Setup the CIG OLT switch port
    port#cig_olt_port:
      type: tosca.nodes.SwitchPort
      properties:
        portId: 51
        host_learning: false
      requirements:
        - switch:
            node: switch#agg_sw
            relationship: tosca.relationships.BelongsToOne

    # Setup the Iskratel XGS-PON OLT switch port
    port#iskratelx_olt_port:
      type: tosca.nodes.SwitchPort
      properties:
        portId: 46
        host_learning: false
      requirements:
        - switch:
            node: switch#agg_sw
            relationship: tosca.relationships.BelongsToOne

    # Setup the Iskratel GPON OLT switch port
    port#iskratelg_olt_port:
      type: tosca.nodes.SwitchPort
      properties:
        portId: 47
        host_learning: false
      requirements:
        - switch:
            node: switch#agg_sw
            relationship: tosca.relationships.BelongsToOne

    # Port connected to the BNG
    port#bng_port:
      type: tosca.nodes.SwitchPort
      properties:
        portId: 48
      requirements:
        - switch:
            node: switch#agg_sw
            relationship: tosca.relationships.BelongsToOne

    # Setup the fabric switch port where the external
    # router is connected to
    bngmapping:
      type: tosca.nodes.BNGPortMapping
      properties:
        s_tag: any
        switch_port: 48

    # DHCP L2 Relay config
    onos_app#dhcpl2relay:
      type: tosca.nodes.ONOSApp
      properties:
        name: dhcpl2relay
        must-exist: true

    dhcpl2relay-config-attr:
      type: tosca.nodes.ServiceInstanceAttribute
      properties:
        name: /onos/v1/network/configuration/apps/org.opencord.dhcpl2relay
        value: >
          {
            "dhcpl2relay" : {
              "useOltUplinkForServerPktInOut" : false,
              "dhcpServerConnectPoints" : [ "of:0000000000000001/48" ]
            }
          }
      requirements:
        - service_instance:
            node: onos_app#dhcpl2relay
            relationship: tosca.relationships.BelongsToOne

    # OLT app extra config
    onos_app#olt:
      type: tosca.nodes.ONOSApp
      properties:
        name: olt
        must-exist: true

    olt-config-attr:
      type: tosca.nodes.ServiceInstanceAttribute
      properties:
        name: /onos/v1/network/configuration/devices
        value: >
          {
            "of:00000024454a6be4" : {
              "basic" : {
                "name" : "ADTRAN OLT",
                "driver" : "voltha"
              }
            }
          }
      requirements:
        - service_instance:
            node: onos_app#olt
            relationship: tosca.relationships.BelongsToOne

    # ONU Whitelist
    service#att:
      type: tosca.nodes.AttWorkflowDriverService
      properties:
        name: att-workflow-driver
        must-exist: true

    # ONUs connected to EdgeCore OLT
    ALPHe3d1cee9:
      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
      properties:
        serial_number: ALPHe3d1cee9
        pon_port_id: 536870912
        device_id: of:00000000c0a8646f
      requirements:
        - owner:
            node: service#att
            relationship: tosca.relationships.BelongsToOne

    # ISKT71e81130:
    #   type: tosca.nodes.AttWorkflowDriverWhiteListEntry
    #   properties:
    #     serial_number: ISKT71e81130
    #     pon_port_id: 536870912
    #     device_id: of:00000000c0a8646f
    #   requirements:
    #     - owner:
    #         node: service#att
    #         relationship: tosca.relationships.BelongsToOne

    # ONUs connected to Adtran OLT
    ADTN17510028:
      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
      properties:
        serial_number: ADTN17510028
        pon_port_id: 5
        device_id: of:00000024454A6BE4
      requirements:
        - owner:
            node: service#att
            relationship: tosca.relationships.BelongsToOne

    # ADTN16180345:
    #   type: tosca.nodes.AttWorkflowDriverWhiteListEntry
    #   properties:
    #     serial_number: ADTN16180345
    #     pon_port_id: 6
    #     device_id: of:00000024454A6BE4
    #   requirements:
    #     - owner:
    #         node: service#att
    #         relationship: tosca.relationships.BelongsToOne

    # ONUs connected to CIG OLT
    CIGG18a00002:
      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
      properties:
        serial_number: CIGG18a00002
        pon_port_id: 536870913
        device_id: of:00000000c0a86471
      requirements:
        - owner:
            node: service#att
            relationship: tosca.relationships.BelongsToOne

    # # ONUs connected to Iskratel XGS-PON OLT
    ISKT71e81070:
      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
      properties:
        serial_number: ISKT71e81070
        pon_port_id: 536870912
        device_id: of:00000000c0a86472
      requirements:
        - owner:
            node: service#att
            relationship: tosca.relationships.BelongsToOne

    # ISKT71e81071:
    #   type: tosca.nodes.AttWorkflowDriverWhiteListEntry
    #   properties:
    #     serial_number: ISKT71e81071
    #     pon_port_id: 536870912
    #     device_id: of:00000000c0a86472
    #   requirements:
    #     - owner:
    #         node: service#att
    #         relationship: tosca.relationships.BelongsToOne

    # ONUs connected to Iskratel GPON OLT
    ISKT45f2c688:
      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
      properties:
        serial_number: ISKT45f2c688
        pon_port_id: 536870912
        device_id: of:00000000c0a86473
      requirements:
        - owner:
            node: service#att
            relationship: tosca.relationships.BelongsToOne

    # ISKT45f2bd61:
    #   type: tosca.nodes.AttWorkflowDriverWhiteListEntry
    #   properties:
    #     serial_number: ISKT45f2bd61
    #     pon_port_id: 536870912
    #     device_id: of:00000000c0a86473
    #   requirements:
    #     - owner:
    #         node: service#att
    #         relationship: tosca.relationships.BelongsToOne

    # ISKT45f2c1e4:
    #   type: tosca.nodes.AttWorkflowDriverWhiteListEntry
    #   properties:
    #     serial_number: ISKT45f2c1e4
    #     pon_port_id: 536870912
    #     device_id: of:00000000c0a86473
    #   requirements:
    #     - owner:
    #         node: service#att
    #         relationship: tosca.relationships.BelongsToOne
