40 lines
1.3 KiB
Puppet
40 lines
1.3 KiB
Puppet
class kickstack::quantum::plugin inherits kickstack {
|
|
|
|
include kickstack::quantum::config
|
|
|
|
$sql_conn = getvar("${fact_prefix}quantum_sql_connection")
|
|
$tenant_network_type = "$::kickstack::quantum_tenant_network_type"
|
|
$network_vlan_ranges = $tenant_network_type ? {
|
|
'gre' => '',
|
|
default => "${::kickstack::quantum_physnet}:${::kickstack::quantum_network_vlan_ranges}",
|
|
}
|
|
$tunnel_id_ranges = $tenant_network_type ? {
|
|
'gre' => $::kickstack::quantum_tunnel_id_ranges,
|
|
default => '',
|
|
}
|
|
|
|
case "$::kickstack::quantum_plugin" {
|
|
'ovs': {
|
|
class { "quantum::plugins::ovs":
|
|
sql_connection => $sql_conn,
|
|
tenant_network_type => $tenant_network_type,
|
|
network_vlan_ranges => $network_vlan_ranges,
|
|
tunnel_id_ranges => $tunnel_id_ranges
|
|
}
|
|
# This needs to be set for the plugin, not the agent
|
|
# (the latter is what the Quantum module assumes)
|
|
quantum_plugin_ovs { 'SECURITYGROUP/firewall_driver':
|
|
value => 'quantum.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver',
|
|
require => Class['quantum::plugins::ovs']
|
|
}
|
|
}
|
|
'linuxbridge': {
|
|
class { "quantum::plugins::linuxbridge":
|
|
sql_connection => $sql_conn,
|
|
tenant_network_type => $tenant_network_type,
|
|
network_vlan_ranges => $network_vlan_ranges,
|
|
}
|
|
}
|
|
}
|
|
}
|