classes:
- service.heat.server.cluster
- service.haproxy.proxy.single
- service.keepalived.cluster.single
- system.haproxy.proxy.listen.openstack.heat
parameters:
  heat:
    server:
      stack_domain_admin:
        name: heat_domain_admin
        password: ${_param:heat_domain_admin_password}
        domain: heat
      enabled: true
      region: RegionOne
      version: ${_param:heat_version}
      bind:
        api_cfn:
          address: ${_param:cluster_local_address}
        api_cloudwatch:
          address: ${_param:cluster_local_address}
        api:
          address: ${_param:cluster_local_address}
      database:
        engine: mysql
        host: ${_param:openstack_database_address}
        port: 3306
        name: heat
        user: heat
        password: ${_param:mysql_heat_password}
      metadata:
        host: ${_param:cluster_vip_address}
        port: 8000
      waitcondition:
        host: ${_param:cluster_vip_address}
        port: 8000
      watch:
        host: ${_param:cluster_vip_address}
        port: 8003
      identity:
        engine: keystone
        host: ${_param:cluster_vip_address}
        port: 35357
        tenant: service
        user: heat
        password: ${_param:keystone_heat_password}
      message_queue:
        engine: rabbitmq
        port: 5672
        user: openstack
        password: ${_param:rabbitmq_openstack_password}
        virtual_host: '/openstack'
        members:
          - host: ${_param:openstack_message_queue_node01_address}
          - host: ${_param:openstack_message_queue_node02_address}
          - host: ${_param:openstack_message_queue_node03_address}