---

  # 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-3.berlin-lab.lfbroadband.org
        user: community
        pass: admin
        dp_iface_name: eth1.7
        container_type: LXC
        container_name: ALPHE3A69D03
        onu: ALPHe3a69d03
        olt: S210Z14009247
        c_tag: 7
        s_tag: 11
        power_switch_port: 7
        uni_id: 1
#      -
#        ip: node-3.berlin-lab.lfbroadband.org
#        user: community
#        pass: admin
#        dp_iface_name: eth1.7
#        container_type: LXC
#        container_name: ALPHE3D1CF5C
#        onu: ALPHe3d1cf5c
#        olt: S210Z14009247
#        c_tag: 7
#        s_tag: 12
#        power_switch_port: 8
#        uni_id: 1

    dst:
      -
        dp_iface_ip_qinq: 10.11.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
#      -
#        dp_iface_ip_qinq: 10.12.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'
