---
# 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.

cord_scenario: cord
cord_profile: rcord

vagrant_vms:
  - 'corddev'

# Variables
fabric_ip: '10.6.1.1/24'
management_ip: '10.255.20.1/24'
external_ip: '10.255.21.2/24'
external_gw: '10.255.21.254'
external_iface: 'eno3'
management_network: 10.255.20.0/24

deploy_docker_registry: "10.255.21.2:5000"

headnode: cord@10.255.21.2

# NOTE: The `host_cord_profile_dir` variable below is the path to the cord_profile dir that
# gets mounted to corddev VM.This `cord_profile` dir typically lives in a directory
# one level up from the `cord` directory
host_cord_profile_dir: "/var/jenkins_home_google/workspace/cord_profile"

build_targets:
  - 'setup-automation'

copy_cord_prereqs:
  - 'config-ssh-key'

skipTags:
  - 'set_compute_node_password'

# Wait until headnode prepped before building containers, for consistent DNS
docker_images_prereqs:
  - 'prep-headnode'

# node topology
physical_node_list:
  - name: head1
    aliases:
      - head

password_compute_node: ubuntu
password_maas_admin: admin
password_maas_user: cord

# Inventory for ansible, used to generate inventory.ini
inventory_groups:
  config:
    localhost:
      ansible_connection: local
  build:
    corddev:
  head:
    head1:
      ansible_host: 10.255.21.2
      ansible_port: 22
      ansible_user: cord
      ansible_ssh_pass: cord
  compute:
