---

  # 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.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.6.2-51d1824e8c049909fd516c7ce3c5f834b9649152-100G-NNI.deb
      board_technology: GPON

  # XGS-PON OLT
    -
      ip: 10.34.90.51
      sship: 10.34.90.51
      user: root
      pass: onl
      fortygig: False
      aggPort: 1
      serial: EC1729003539
      oltDebVersion: openolt_asfvolt16-3.6.2-602bf0a2b75e27e241cb73d7daf1e2c883539102-100G-NNI.deb
      board_technology: XGS-PON

  hosts:
    src:
      #GPON ONU
      -
        ip: 10.34.90.43
        user: community
        pass: admin
        dp_iface_name: eth1.7
        container_type: LXC
        container_name: SCOM00001c82
        onu: SCOM00001c82
        olt: EC1912001823
        c_tag: 7
        s_tag: 31
        power_switch_port: 1
        uni_id: 1

      #XGSPON ONU
      -
        ip: 10.34.90.43
        user: community
        pass: admin
        dp_iface_name: eth1.7
        container_type: LXC
        container_name: ALPHe3d1cf5c
        onu: ALPHe3d1cf5c
        olt: EC1729003539
        c_tag: 7
        s_tag: 12
        power_switch_port: 6
        uni_id: 1
      -
        ip: 10.34.90.43
        user: community
        pass: admin
        dp_iface_name: eth1.7
        container_type: LXC
        container_name: ALPHe3a69d03
        onu: ALPHe3a69d03
        olt: EC1729003539
        c_tag: 7
        s_tag: 11
        power_switch_port: 8
        uni_id: 1

    dst:
      -
        dp_iface_ip_qinq: 10.31.7.254
        ip: null
        user: null
        pass: null
        dp_iface_name: null
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null
      -
        dp_iface_ip_qinq: 10.12.7.254
        ip: null
        user: null
        pass: null
        dp_iface_name: null
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null
      -
        dp_iface_ip_qinq: 10.11.7.254
        ip: null
        user: null
        pass: null
        dp_iface_name: null
        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'
