---

  # Copyright 2020-2023 Open Networking Foundation (ONF) and the ONF Contributors
  #
  # 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.

  # Automated deployment configuration for Tucson pod

  # Change default values in tests
  ONOS_REST_PORT: 30120
  ONOS_SSH_PORT: 30115
  OLT_PORT: 9191
  KUBERNETES_CONF: $HOME/.kube/kind-config-voltha-minimal

# This tells the control node how to reach the Kubernetes nodes.
  nodes:
    -
      ip: '10.34.90.43'
      user: 'community'
      pass: 'admin'
    -
      ip: '10.34.90.41'
      user: 'community'
      pass: 'admin'
    -
      ip: '10.34.90.42'
      user: 'community'
      pass: 'admin'

  fabric_switches: []
  # The switch is shared across 2 PODs, thus is externally controlled
  #  -
  #    mac: '8c:ea:1b:a7:29:72'
  #    ip: 10.34.90.55
  #    user: root
  #    pass: onl
  #    bngPort: 157
  #    device_id: 'of:0000000000000001'

  olts:
  # Gpon OLT
    -
      ip:  10.34.90.50
      sship:  10.34.90.50
      user: root
      pass: onl
      fortygig: False
      aggPort: 2
      serial: EC1912001823
      oltDebVersion: openolt_asgvolt64-3.7.4-3b190f027136e845c5850a5b1a97897ce2b74ebf-100G-NNI.deb
      board_technology: GPON

  hosts:
    src:
      -
        ip: 10.34.90.43
        user: community
        pass: admin
        dp_iface_name: eth1.35
        container_type: LXC
        container_name: SCOM00001c82
        onu: SCOM00001c82
        olt: EC1912001823
        c_tag: 801
        s_tag: 111
        power_switch_port: 1
        onu_type: 'scom'
        service_type: 'hsia'
        uni_id: 1
      -
        ip: 10.34.90.43
        user: community
        pass: admin
        dp_iface_name: eth1.35
        container_type: LXC
        container_name: SCOM00001c89
        onu: SCOM00001c89
        olt: EC1912001823
        c_tag: 802
        s_tag: 222
        power_switch_port: 1
        onu_type: 'scom'
        service_type: 'hsia'
        uni_id: 1
      -
        ip: 10.34.90.43
        user: community
        pass: admin
        dp_iface_name: eth1.65
        container_type: LXC
        container_name: SCOM00001c82
        onu: SCOM00001c82
        olt: EC1912001823
        c_tag: 444
        s_tag: 333
        power_switch_port: 1
        onu_type: 'scom'
        service_type: 'voip'
        uni_id: 1
      -
        ip: 10.34.90.43
        user: community
        pass: admin
        dp_iface_name: eth1.65
        container_type: LXC
        container_name: SCOM00001c89
        onu: SCOM00001c89
        olt: EC1912001823
        c_tag: 444
        s_tag: 333
        power_switch_port: 1
        onu_type: 'scom'
        service_type: 'voip'
        uni_id: 1
      -
        ip: 10.34.90.43
        user: community
        pass: admin
        dp_iface_name: eth1.55
        container_type: LXC
        container_name: SCOM00001c82
        onu: SCOM00001c82
        olt: EC1912001823
        c_tag: 55
        s_tag: 555
        power_switch_port: 1
        onu_type: 'scom'
        service_type: 'vod'
        uni_id: 1
      -
        ip: 10.34.90.43
        user: community
        pass: admin
        dp_iface_name: eth1.55
        container_type: LXC
        container_name: SCOM00001c89
        onu: SCOM00001c89
        olt: EC1912001823
        c_tag: 55
        s_tag: 555
        power_switch_port: 1
        onu_type: 'scom'
        service_type: 'vod'
        uni_id: 1
      -
        ip: '10.34.90.43'
        user: 'community'
        pass: 'admin'
        dp_iface_name: 'eth1.55'
        container_type: LXC
        container_name: SCOM00001c82
        onu: 'SCOM00001c82'
        olt: 'EC1912001823'
        c_tag: '55'
        s_tag: '550'
        power_switch_port: 1
        onu_type: 'scom'
        mcast_rg: '10.11.6.3/24'
        mcast_grp_subnet_mask: '224.0.0.0/4'
        service_type: 'mcast'
        uni_id: '1'
    dst:  
      -
        #HSI
        ip: null
        user: null
        pass: null
        dp_iface_name: ens1f0
        dp_iface_ip_qinq: '10.11.1.254'
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null
      -
        #HSI
        ip: null
        user: null
        pass: null
        dp_iface_name: ens1f0
        dp_iface_ip_qinq: '10.11.2.254'
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null
      -
        #VOIP
        ip: null
        user: null
        pass: null
        noroot_ip: '10.34.90.43'
        noroot_user: community
        noroot_pass: admin
        dp_iface_name: ens1f0
        dp_iface_ip_qinq: '10.11.4.254'
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null
      -
        #VOIP
        ip: null
        user: null
        pass: null
        noroot_ip: '10.34.90.43'
        noroot_user: community
        noroot_pass: admin
        dp_iface_name: ens1f0
        dp_iface_ip_qinq: '10.11.4.254'
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null
      -
        #VOD
        ip: null
        user: null
        pass: null
        noroot_ip: '10.34.90.43'
        noroot_user: community
        noroot_pass: admin
        dp_iface_name: ens1f0
        dp_iface_ip_qinq: '10.11.5.254'
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null
      -
        #VOD
        ip: null
        user: null
        pass: null
        noroot_ip: '10.34.90.43'
        noroot_user: community
        noroot_pass: admin
        dp_iface_name: ens1f0
        dp_iface_ip_qinq: '10.11.5.254'
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null
      -
        #MCAST
        ip: null
        user: null
        pass: null
        bng_ip: '10.34.90.43'
        bng_user: community
        bng_pass: admin
        dp_iface_name: null
        dp_iface_ip_qinq: '225.22.0.2'
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null

  web_power_switch:
    ip: '10.34.90.48'
    user: 'admin'
    password: 'secret'
    type: 'EPC'
