# Copyright 2017-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 INFOSYS POD , olt/onu are connected to this

---

kube_config: 'infosys.conf'

nodes:
  -
    ip: '192.168.10.21'
    user: 'ubuntu'
    pass: 'ubuntu'

fabric_switches:
  -
    mac: 'b8:6a:97:8b:ef:3c'
    ip: '192.168.10.30'
    user: 'root'
    pass: 'onl'
    bngPort: '3'
    device_id: 'of:0000000000000001'

olts:
  -
    ip: '192.168.10.75'
    user: 'root'
    pass: 'onl'
    fortygig: 'true'
    aggPort: '10'
    serial: 'EC1917000123'
    oltDebVersion: openolt_asfvolt16-2.4.6-5d9ab1a36e13e55ca3687af160cfd4f582317493.deb
    oltDebVersion23: openolt_asfvolt16-2.4.6-5d9ab1a36e13e55ca3687af160cfd4f582317493.deb

onus:
  -
    serial: 'ISKT71e82118'

hosts:
  src:
    -
      ip: '192.168.10.25'
      user: 'voltharg'
      pass: 'voltharg'
      dp_iface_name: 'ens10'
      container_type: null
      container_name: null
      olt: 'EC1917000123'
      onu: 'ISKT71e82118'
      c_tag: '222'
      s_tag: '111'
      onu_type: 'iskratel'

  dst:
    -
      ip: null
      user: null
      pass: null
      dp_iface_name: null
      noroot_ip: '192.168.20.254' 
      noroot_user: volthadhcp
      noroot_pass: volthadhcp 
      dp_iface_name: ens10
      dp_iface_ip_qinq: '192.168.20.254'
      dp_iface_ip: null
      dp_iface_gateway: null
      container_type: null
      container_name: null
