---

# Copyright 2018-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.

# TOSCA recipe for adding a sample R-CORD subscriber
#
# http POST $(minikube service xos-tosca --url)/run \
#  xos-username:admin@opencord.org xos-password:letmein \
#  @./sample-rcord-subscriber-tosca.yaml


tosca_definitions_version: tosca_simple_yaml_1_0

description: Creates a CORD test subscriber, created by platform-install

imports:
  - custom_types/cordsubscriberroot.yaml
  - custom_types/voltservice.yaml
  - custom_types/voltdevice.yaml
  - custom_types/voltdeviceport.yaml
  - custom_types/serviceinstancelink.yaml

topology_template:
  node_templates:

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

    # Setup an OLT Device
    volt_device:
      type: tosca.nodes.VOLTDevice
      properties:
        name: test-volt-device
        device_id: volt-1
        host: 8.8.8.8
        port: 2194
      requirements:
        - volt_service:
            node: service#volt
            relationship: tosca.relationships.BelongsToOne

    volt_port:
      type: tosca.nodes.VOLTDevicePort
      properties:
        port_id: volt-port-1
        s_tag: 222
      requirements:
        - volt_device:
            node: volt_device
            relationship: tosca.relationships.BelongsToOne

    # A subscriber
    my_house:
      type: tosca.nodes.CordSubscriberRoot
      properties:
        name: My House
        service_specific_id: "123"
        firewall_enable: false
        cdn_enable: false
        url_filter_enable: false
        url_filter_level: R
        c_tag: 111
        olt_device: volt-1
        olt_port: volt-port-1