---

  # 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: 'node-4.berlin-lab.lfbroadband.org'
      user: 'community'
      pass: 'admin'
    -
      ip: 'node-5.berlin-lab.lfbroadband.org'
      user: 'community'
      pass: 'admin'
    -
      ip: 'node-6.berlin-lab.lfbroadband.org'
      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:
  # XGSPON OLT
    -
      ip:  zyxel-olt.berlin-lab.lfbroadband.org
      sship:  zyxel-olt.berlin-lab.lfbroadband.org
      fortygig: False
      aggPort: 6
      user: root
      pass: onl
      serial: S210Z14009247
      oltDebVersion: openolt_sda3016ss-3.7.2-dev-xgspon-20220520.deb
      board_technology: XGS-PON
 
  hosts:
    src:
      #xgspon ONU
      -
        ip: node-6.berlin-lab.lfbroadband.org
        user: community
        pass: admin
        dp_iface_name: eth1.7
        container_type: LXC
        container_name: ZYXE8CABE30B
        onu: ZYXE8cabe30b
        olt: S210Z14009247
        c_tag: 7
        s_tag: 41
        power_switch_port: 5
        uni_id: 1

    dst:
      -
        dp_iface_ip_qinq: 10.41.7.254
        ip: null
        user: null
        pass: null
        noroot_ip: bng.berlin-lab.lfbroadband.org
        noroot_user: community
        noroot_pass: admin
        dp_iface_name: enp7s0
        dp_iface_ip: null
        dp_iface_gateway: null
        container_type: null
        container_name: null

  web_power_switch:
    ip: 'pdu01.berlin-lab.lfbroadband.org'
    user: 'admin'
    password: 'secret'
    type: 'EPC'
