Merge "Align template defaults with the client"
[apex-tripleo-heat-templates.git] / puppet / manifests / overcloud_compute.pp
index 2e450a4..79a6abb 100644 (file)
@@ -68,27 +68,48 @@ if hiera('cinder_enable_nfs_backend', false) {
 }
 
 include ::nova::compute::libvirt
+if hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV2' {
+  file {'/etc/libvirt/qemu.conf':
+    ensure  => present,
+    content => hiera('midonet_libvirt_qemu_data')
+  }
+}
 include ::nova::network::neutron
 include ::neutron
 
 # If the value of core plugin is set to 'nuage',
 # include nuage agent,
+# If the value of core plugin is set to 'midonet',
+# include midonet agent,
 # else use the default value of 'ml2'
 if hiera('neutron::core_plugin') == 'neutron.plugins.nuage.plugin.NuagePlugin' {
   include ::nuage::vrs
   include ::nova::compute::neutron
-} else {
-  class { '::neutron::plugins::ml2':
-    flat_networks        => split(hiera('neutron_flat_networks'), ','),
-    tenant_network_types => [hiera('neutron_tenant_network_type')],
+
+  class { '::nuage::metadataagent':
+    nova_os_tenant_name => hiera('nova::api::admin_tenant_name'),
+    nova_os_password    => hiera('nova_password'),
+    nova_metadata_ip    => hiera('nova_metadata_node_ips'),
+    nova_auth_ip        => hiera('keystone_public_api_virtual_ip'),
   }
+}
+elsif hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV2' {
 
-  class { '::neutron::agents::ml2::ovs':
-    bridge_mappings => split(hiera('neutron_bridge_mappings'), ','),
-    tunnel_types    => split(hiera('neutron_tunnel_types'), ','),
+  # TODO(devvesa) provide non-controller ips for these services
+  $zookeeper_node_ips = hiera('neutron_api_node_ips')
+  $cassandra_node_ips = hiera('neutron_api_node_ips')
+
+  class {'::tripleo::network::midonet::agent':
+    zookeeper_servers => $zookeeper_node_ips,
+    cassandra_seeds   => $cassandra_node_ips
   }
+}
+else {
+
+  include ::neutron::plugins::ml2
+  include ::neutron::agents::ml2::ovs
 
-  if 'cisco_n1kv' in hiera('neutron_mechanism_drivers') {
+  if 'cisco_n1kv' in hiera('neutron::plugins::ml2::mechanism_drivers') {
     class { '::neutron::agents::n1kv_vem':
       n1kv_source  => hiera('n1kv_vem_source', undef),
       n1kv_version => hiera('n1kv_vem_version', undef),