---

  # Copyright 2020-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.
  
  # 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.44'
      user: 'community'
      pass: 'admin'
    -
      ip: '10.34.90.45'
      user: 'community'
      pass: 'admin'
    -
      ip: '10.34.90.46'
      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.53
      sship:  10.34.90.53
      fortygig: False
      aggPort: 6
      user: root
      pass: onl
      serial: S210Z14009247
      oltDebVersion: openolt_sda3016ss-3.7.2-dev-gpon.deb
      board_technology: GPON
 
  hosts:
    src:
      #GPON ONU
      -
        ip: 10.34.90.45
        user: community
        pass: admin
        dp_iface_name: eth1.7
        container_type: LXC
        container_name: SCOM00001C90
        onu: SCOM00001c90
        olt: S210Z14009247
        c_tag: 7
        s_tag: 42
        power_switch_port: 6
        uni_id: 1
      -
        ip: 10.34.90.45
        user: community
        pass: admin
        dp_iface_name: eth1.7
        container_type: LXC
        container_name: SCOMA030600F
        onu: SCOMa030600f
        olt: S210Z14009247
        c_tag: 7
        s_tag: 43
        power_switch_port: 7
        uni_id: 1

    dst:
      -
        dp_iface_ip_qinq: 10.42.7.254
        ip: null
        user: null
        pass: null
        noroot_ip: 10.34.90.43
        noroot_user: community
        noroot_pass: admin
        dp_iface_name: ens3f0
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null
      -
        dp_iface_ip_qinq: 10.43.7.254
        ip: null
        user: null
        pass: null
        noroot_ip: 10.34.90.43
        noroot_user: community
        noroot_pass: admin
        dp_iface_name: ens3f0
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null

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