# 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-shad.yaml http://10.90.0.101:30007/run

tosca_definitions_version: tosca_simple_yaml_1_0
imports:
  - custom_types/oltdevice.yaml
  - custom_types/onudevice.yaml
  - custom_types/voltservice.yaml
  - custom_types/rcordsubscriber.yaml
  - custom_types/attworkflowdriverwhitelistentry.yaml
  - custom_types/attworkflowdriverservice.yaml
description: Create a simulated OLT Device in VOLTHA
topology_template:
  node_templates:

    service#volt:
      type: tosca.nodes.VOLTService
      properties:
        name: volt
        must-exist: true

    # OLT ------------------------------------------------
    olt_device:
      type: tosca.nodes.OLTDevice
      properties:
        name: SHAD OLT
        device_type: openolt
        host: 10.90.0.122
        port: 9191
        switch_datapath_id: of:0000000000000001
        switch_port: "2"
        outer_tpid: "0x8100"
        uplink: "65536"
        nas_id: "NAS_ID"
      requirements:
        - volt_service:
            node: service#volt
            relationship: tosca.relationships.BelongsToOne

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

    ALPHe3d1cfe3:
      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
      properties:
        serial_number: ALPHe3d1cfe3
        pon_port_id: 536870912
        device_id: of:000000000a5a0097
      requirements:
        - owner:
            node: service#att
            relationship: tosca.relationships.BelongsToOne

    ISKT71E80080:
      type: tosca.nodes.AttWorkflowDriverWhiteListEntry
      properties:
        serial_number: ISKT71E80080
        pon_port_id: 536870912
        device_id: of:000000000a5a0097
      requirements:
        - owner:
            node: service#att
            relationship: tosca.relationships.BelongsToOne

    # Subscriber ------------------------------------------------
    shad_1:
      type: tosca.nodes.RCORDSubscriber
      properties:
        name: Sub_ALPHe3d1cfe3
        status: pre-provisioned
        c_tag: 115
        s_tag: 222
        onu_device: ALPHe3d1cfe3
        nas_port_id : "PON 1/1/03/1:1.1.1"
        circuit_id: foo1
        remote_id: bar1

    shad_2:
      type: tosca.nodes.RCORDSubscriber
      properties:
        name: Sub_ISKT71E80080
        status: pre-provisioned
        c_tag: 222
        s_tag: 222
        onu_device: ISKT71e80080
        nas_port_id : "PON 1/1/04/1:1.1.1"
        circuit_id: foo2
        remote_id: bar2