# 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 QCT POD 1

---

pod_config:
  repo_url: 'https://gerrit.opencord.org/pod-configs'
  file_name: 'qct-pod1.yml'

make_release: 'true'

maas:
  ip: '10.201.101.254'
  api_key: 'fQp2rrr3RqZtkJJYBK:XqQX7UqwXGKMYQ8EZ5:UDbFhfenPdjc3fmmCQX2fek7AyRGrf6A'
  head_system_id: 'ehm46m'

dev_node:
  name: 'qct-cord-pod1'
  user: 'cord'

head:
  ip: '10.201.101.11'
  user: 'cord'
  pass: 'cord'

compute_nodes:
  -
    mac: '2c:60:0c:6f:b6:76'
    ip: '10.6.0.201'
    switch: '48:0f:cf:ae:de:26'
    ipmi:
      ip: '10.201.101.13'
      user: 'OCPQ'
      pass: 'OCPQ'
  -
    mac: '2c:60:0c:6f:b6:04'
    ip: '10.6.0.202'
    switch: '48:0f:cf:ae:ee:2a'
    ipmi:
      ip: '10.201.101.14'
      user: 'OCPQ'
      pass: 'OCPQ'

fabric_switches:
  -
    mac: '48:0f:cf:ae:de:26'
    ip: '10.6.0.101'
    user: 'root'
    pass: 'onl'
    role: 'leaf-1'
  -
    mac: '48:0f:cf:ae:cc:24'
    ip: '10.6.0.102'
    user: 'root'
    pass: 'onl'
    role: 'spine-1'
  -
    mac: '48:0f:cf:ae:ee:2a'
    ip: '10.6.0.103'
    user: 'root'
    pass: 'onl'
    role: 'leaf-2'
  -
    mac: '48:0f:cf:ae:9d:58'
    ip: '10.6.0.104'
    user: 'root'
    pass: 'onl'
    role: 'spine-2'
