classes:
- service.git.client
- service.opencontrail.test.single
- system.linux.system.single
- system.linux.system.repo.mcp.apt_mirantis.saltstack
- system.linux.system.repo.mcp.openstack
- system.openssh.client.lab
- system.salt.master.pkg
- system.salt.master.api
- system.reclass.storage.salt
- system.salt.minion.ca.salt_master
- system.salt.minion.cert.proxy
- system.sphinx.server.doc.reclass
- system.keystone.client.core
- system.keystone.client.service.designate
- system.keystone.client.service.cinder
- system.keystone.client.service.cinder2
- system.keystone.client.service.cinder3
- system.keystone.client.service.glance
- system.keystone.client.service.glare
- system.keystone.client.service.heat
- system.keystone.client.service.heat-cfn
- system.keystone.client.service.keystone
- system.keystone.client.service.neutron
- system.keystone.client.service.nova-ec2
- system.keystone.client.service.nova21
- system.keystone.client.service.nova-placement
- system.mysql.client
- system.mysql.client.database.cinder
- system.mysql.client.database.glance
- system.mysql.client.database.heat
- system.mysql.client.database.keystone
- system.mysql.client.database.nova
- system.mysql.client.database.nova_api
- system.mysql.client.database.neutron
- system.reclass.storage.system.openstack_control_cluster
- system.reclass.storage.system.opencontrail_control_cluster
- system.nova.client.flavor.default
- cluster.os-ha-contrail-40.openstack.proxy
- cluster.os-ha-contrail-40
parameters:
  _param:
    ubuntu_xenial_image_url: "http://ci.mcp.mirantis.net:8085/images/ubuntu-16-04-x64-mcp1.1.qcow2"
    cirros_image_url: "http://ci.mcp.mirantis.net:8085/images/cirros-x64-20170828.qcow2"
    reclass_data_repository: "https://gerrit.mcp.mirantis.net/salt-models/mcp-virtual-lab"
    reclass_data_revision: master
    reclass_config_master: ${_param:infra_config_deploy_address}
    single_address: ${_param:infra_config_address}
    salt_master_host: 127.0.0.1
    salt_master_base_environment: prd
    salt_minion_ca_host: ${linux:network:fqdn}
    salt_api_password_hash: "$6$sGnRlxGf$al5jMCetLP.vfI/fTl3Z0N7Za1aeiexL487jAtyRABVfT3NlwZxQGVhO7S1N8OwS/34VHYwZQA8lkXwKMN/GS1"
  linux:
    system:
      kernel:
        sysctl:
          net.ipv4.conf.ens3.forwarding: 1
          net.ipv4.conf.ens3.send_redirects: 0
    network:
      interface:
        ens4:
          enabled: true
          type: eth
          proto: static
          address: ${_param:single_address}
          netmask: 255.255.255.0
          # This is workaround for different interface
          pre_up_cmds:
          - "iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE"
          post_down_cmds:
          - "iptables -t nat -F POSTROUTING"
  nginx:
    server:
      site:
        nginx_proxy_openstack_web:
          proxy:
            host: ${_param:openstack_control_address}
        nginx_proxy_openstack_api_heat_cfn:
          enabled: false
  salt:
    master:
      reactor:
        reclass/minion/classify:
        - salt://reclass/reactor/node_register.sls
  reclass:
    storage:
      class_mapping:
        common_node:
          expression: all
          node_param:
            single_address:
              value_template: <<node_control_ip>>
            linux_system_codename:
              value_template: <<node_os>>
            salt_master_host:
              value_template: <<node_master_ip>>
        mark_contrail_version:
          expression: <<opencontrail_version>>__startswith__oc
          cluster_param:
            linux_repo_contrail_component:
              value_template: <<opencontrail_version>>
        infra_config:
          expression: <<node_hostname>>__startswith__cfg
          cluster_param:
            infra_config_address:
              value_template: <<node_control_ip>>
            infra_config_deploy_address:
              value_template: <<node_deploy_ip>>
            cluster_domain:
              value_template: <<node_domain>>
        openstack_control01:
          expression: <<node_hostname>>__equals__ctl01
          cluster_param:
            openstack_control_node01_address:
              value_template: <<node_control_ip>>
        openstack_control02:
          expression: <<node_hostname>>__equals__ctl02
          cluster_param:
            openstack_control_node02_address:
              value_template: <<node_control_ip>>
        openstack_control03:
          expression: <<node_hostname>>__equals__ctl03
          cluster_param:
            openstack_control_node03_address:
              value_template: <<node_control_ip>>
        opencontrail_control:
          expression: <<node_hostname>>__startswith__ntw
          cluster_param:
            opencontrail_control_system_codename:
              value_template: <<node_os>>
            opencontrail_control_interface_name:
              value_template: <<node_control_iface>>
        opencontrail_control01:
          expression: <<node_hostname>>__equals__ntw01
          cluster_param:
            opencontrail_control_node01_address:
              value_template: <<node_control_ip>>
        opencontrail_control02:
          expression: <<node_hostname>>__equals__ntw02
          cluster_param:
            opencontrail_control_node02_address:
              value_template: <<node_control_ip>>
        opencontrail_control03:
          expression: <<node_hostname>>__equals__ntw03
          cluster_param:
            opencontrail_control_node03_address:
              value_template: <<node_control_ip>>
        openstack_compute:
          expression: <<node_hostname>>__startswith__cmp
          node_class:
            value_template:
              - cluster.<<node_cluster>>.openstack.compute
          node_param:
            tenant_address:
              value_template: <<node_tenant_ip>>
            external_address:
              value_template: <<node_external_ip>>
      node:
        openstack_control_node01:
          classes:
          - service.galera.master.cluster
          - cluster.os-ha-contrail-40.openstack.control_init
          params:
            mysql_cluster_role: master
            linux_system_codename: xenial
            horizon_identity_host: ${_param:openstack_control_address}
        openstack_control_node02:
          classes:
          - service.galera.slave.cluster
          params:
            mysql_cluster_role: slave
            linux_system_codename: xenial
            horizon_identity_host: ${_param:openstack_control_address}
        openstack_control_node03:
          classes:
          - service.galera.slave.cluster
          params:
            mysql_cluster_role: slave
            linux_system_codename: xenial
            horizon_identity_host: ${_param:openstack_control_address}
