---
# profile_manifests/opencloud.yml
# Generic OpenCloud Site

# site configuration
site_name: generic_opencloud
site_humanname: "Generic OpenCloud"
deployment_type: campus

xos_admin_user: "xosadmin@opencord.org"
xos_admin_pass: "{{ lookup('password', credentials_dir ~ '/xosadmin@opencord.org chars=ascii_letters,digits') }}"
xos_admin_first: XOS
xos_admin_last: Admin

xos_users: []

use_vtn: True
use_openstack: True
use_fabric: False

headnode_name: head1

xos_tosca_config_templates:
  - vtn-service.yaml
  - management-net.yaml

build_xos_base_image: True

# GUI Branding
# Not neeeded, default is OpenCloud

# GUI Config [new GUI], used in app.config.js.j2 and style.config.js.j2
gui_project_name: "OpenCloud"
gui_favicon: "opencloud-favicon.png"
gui_background: "opencloud-bg.jpg"
gui_payoff: "A Value-Added Cloud for the Internet2 Community"
gui_logo: "opencloud-logo.png"

# paths defined in manifest/default.xml
xos_services:
  - name: vtn
    path: onos-apps/apps/vtn
    keypair: vsg_rsa
  - name: openstack
    path: orchestration/xos_services/openstack
  - name: onos
    path: orchestration/xos_services/onos-service
    keypair: onos_rsa
  - name: vrouter
    path: orchestration/xos_services/vrouter

profile_library: "rcord"

# SSL certificate generation
ssl_cert_subj_prefix: "/C=US/ST=California/L=Menlo Park/O=ON.Lab/OU={{ site_humanname }} Deployment"

server_certs:
  - cn: "keystone.{{ site_suffix }}"
    subj: "{{ ssl_cert_subj_prefix }}/CN=keystone.{{ site_suffix }}"
    altnames:
      - "DNS:keystone.{{ site_suffix }}"
      - "DNS:keystone"
  - cn: "xos-core.{{ site_suffix }}"
    subj: "{{ ssl_cert_subj_prefix }}/CN=xos-core.{{ site_suffix }}"
    altnames:
      - "DNS:xos-core.{{ site_suffix }}"

# Network/DNS settings
site_suffix: generic.infra.opencloud.us

dns_search:
  - "{{ site_suffix }}"

mgmt_ipv4_first_octets: "192.168.200"

dns_servers:
  - "{{ mgmt_ipv4_first_octets }}.1"

headnode_user: vagrant

# DNS settings for NSD/Unbound
nsd_zones:
  - name: "{{ site_suffix }}"
    ipv4_first_octets: "{{ mgmt_ipv4_first_octets }}"
    name_reverse_unbound: "168.192.in-addr.arpa"
    soa: ns1
    ns:
      - { name: ns1 }
    nodelists:
      - head_lxd_list
      - physical_node_list
    aliases:
      - { name: "apt-cache", dest: "head1" }
      - { name: "cordloghost", dest: "head1" }
      - { name: "docker", dest: "head1" }
      - { name: "ns", dest: "head1" }
      - { name: "ns1", dest: "head1" }
      - { name: "onos-cord", dest: "head1" }
      - { name: "xos", dest: "head1" }
      - { name: "xos-chameleon", dest: "head1" }
      - { name: "xos-rest-gw", dest: "head1" }
      - { name: "xos-spa-gui", dest: "head1" }

unbound_listen_all: True

unbound_interfaces:
  - "{{ mgmt_ipv4_first_octets }}.1/24"

dhcpd_subnets:
  - interface: mgmtbr
    cidr: "{{ mgmt_ipv4_first_octets }}.1/24"
    dhcp_first: 129
    dhcp_last: 254
    other_static:
      - physical_node_list
      - head_lxd_list

# network interface setup
mgmt_interface: eth1

physical_node_list:
  - name: head1
    ipv4_last_octet: 1
    aliases:
      - head
  - name: compute1
    ipv4_last_octet: 20
  - name: compute2
    ipv4_last_octet: 21

# VTN network configuration
management_network_cidr: 172.27.0.0/24
management_network_ip: 172.27.0.1/24
data_plane_ip: 10.168.0.253/24

# External interface names on compute nodes
compute_external_interfaces:
  - eth0

# ONOS version
onos_docker_image: "onosproject/onos:1.8.7"

on_maas: False
on_cloudlab: False

run_dist_upgrade: False

openstack_version: kilo

juju_config_name: opencloud
juju_config_path: /usr/local/src/juju_config.yml

keystone_admin_password: "{{ lookup('password', 'credentials/generic_opencloud_keystone_admin chars=ascii_letters,digits') }}"

deployment_flavors:
  - m1.small
  - m1.medium
  - m1.large
  - m1.xlarge

charm_versions:
  ceilometer-agent: "cs:trusty/ceilometer-agent-13"
  ceilometer: "cs:trusty/ceilometer-17"
  glance: "cs:trusty/glance-28"
  keystone: "cs:trusty/keystone-33"
  mongodb: "cs:trusty/mongodb-33"
  neutron-api: "cs:~cordteam/trusty/neutron-api-5"
  nova-compute: "cs:~cordteam/trusty/nova-compute-2"
  ntp: "cs:trusty/ntp-14"
  openstack-dashboard: "cs:trusty/openstack-dashboard-19"
  percona-cluster: "cs:trusty/percona-cluster-31"
  rabbitmq-server: "cs:trusty/rabbitmq-server-42"

head_lxd_list:
  - name: "juju-1"
    service: "juju"
    aliases:
       - "juju"
    ipv4_last_octet: 50

  - name: "ceilometer-1"
    service: "ceilometer"
    aliases:
      - "ceilometer"
    ipv4_last_octet: 51
    forwarded_ports:
      - { ext: 8777, int: 8777 }

  - name: "glance-1"
    service: "glance"
    aliases:
      - "glance"
    ipv4_last_octet: 52
    forwarded_ports:
      - { ext: 9292, int: 9292 }

  - name: "keystone-1"
    service: "keystone"
    aliases:
      - "keystone"
    ipv4_last_octet: 53
    forwarded_ports:
      - { ext: 35357, int: 35357 }
      - { ext: 4990, int: 4990 }
      - { ext: 5000, int: 5000 }

  - name: "percona-cluster-1"
    service: "percona-cluster"
    aliases:
      - "percona-cluster"
    ipv4_last_octet: 54

  - name: "neutron-api-1"
    service: "neutron-api"
    aliases:
      - "neutron-api"
    ipv4_last_octet: 55
    forwarded_ports:
      - { ext: 9696, int: 9696 }

  - name: "nova-cloud-controller-1"
    service: "nova-cloud-controller"
    aliases:
      - "nova-cloud-controller"
    ipv4_last_octet: 56
    forwarded_ports:
      - { ext: 8774, int: 8774 }

  - name: "openstack-dashboard-1"
    service: "openstack-dashboard"
    aliases:
      - "openstack-dashboard"
    ipv4_last_octet: 57
    forwarded_ports:
      - { ext: 8080, int: 80 }

  - name: "rabbitmq-server-1"
    service: "rabbitmq-server"
    aliases:
      - "rabbitmq-server"
    ipv4_last_octet: 58

  - name: "mongodb-1"
    service: "mongodb"
    aliases:
      - "mongodb"
    ipv4_last_octet: 59

lxd_service_list:
  - ceilometer
  - glance
  - keystone
  - mongodb
  - neutron-api
  - nova-cloud-controller
  - openstack-dashboard
  - percona-cluster
  - rabbitmq-server

standalone_service_list:
  - ceilometer-agent
  - ntp

service_relations:
  - name: keystone
    relations: [ "percona-cluster", ]

  - name: nova-cloud-controller
    relations: [ "percona-cluster", "rabbitmq-server", "glance", "keystone", ]

  - name: glance
    relations: [ "percona-cluster", "keystone", ]

  - name: neutron-api
    relations: [ "keystone", "percona-cluster", "rabbitmq-server", "nova-cloud-controller", ]

  - name: openstack-dashboard
    relations: [ "keystone", ]

  - name: ceilometer
    relations: [ "mongodb", "rabbitmq-server" ]

  - name: "ceilometer:identity-service"
    relations: [ "keystone:identity-service", ]

  - name: "ceilometer:ceilometer-service"
    relations: [ "ceilometer-agent:ceilometer-service", ]


compute_relations:
  - name: nova-compute
    relations: [ "ceilometer-agent", "glance", "nova-cloud-controller", ]

  - name: "nova-compute:shared-db"
    relations: [ "percona-cluster:shared-db", ]

  - name: "nova-compute:amqp"
    relations: [ "rabbitmq-server:amqp", ]

  - name: ntp
    relations: [ "nova-compute", ]


xos_images:
  - name: "trusty-server-multi-nic"
    url: "http://www.vicci.org/opencloud/trusty-server-cloudimg-amd64-disk1.img"
    checksum: "sha256:c2d0ffc937aeb96016164881052a496658efeb98959dc68e73d9895c5d9920f7"

