vswitch: add 2 parameters for l2_pop and tunnelling

Allow to disable L2_pop and tunnelling.

Change-Id: If0007ed1ee67ec6573645ea8e8af024d2f0a038a
This commit is contained in:
Emilien Macchi 2015-05-08 10:36:47 -04:00
parent e22400fb45
commit 62f3f263ca
2 changed files with 38 additions and 3 deletions

View File

@ -133,6 +133,17 @@
# (optional) N1000 KV Domain ID (does nothing?)
# Defaults to 1000
#
# [*enable_tunneling*]
# (optional) Enable or not tunneling.
# Should be disable if using VLAN but enabled if using GRE or VXLAN.
# Defailts to true
#
# [*l2_population*]
# (optional) Enable or not L2 population.
# If enabled, should be part of mechanism_drivers in cloud::network::controller.
# Should be disabled if running L3 HA with VRRP in Juno.
# Defaults to true
#
# [*firewall_settings*]
# (optional) Allow to add custom parameters to firewall rules
# Should be an hash.
@ -148,6 +159,8 @@ class cloud::network::vswitch(
# common to ml2
$tunnel_types = ['gre'],
$tunnel_eth = '127.0.0.1',
$enable_tunneling = true,
$l2_population = true,
# ml2_ovs
$provider_bridge_mappings = ['public:br-pub'],
$enable_distributed_routing = false,
@ -168,8 +181,8 @@ class cloud::network::vswitch(
case $driver {
'ml2_ovs': {
class { 'neutron::agents::ml2::ovs':
enable_tunneling => true,
l2_population => true,
enable_tunneling => $enable_tunneling,
l2_population => $l2_population,
polling_interval => '15',
tunnel_types => $tunnel_types,
bridge_mappings => $provider_bridge_mappings,
@ -184,7 +197,7 @@ class cloud::network::vswitch(
'ml2_lb': {
class { 'neutron::agents::ml2::linuxbridge':
l2_population => true,
l2_population => $l2_population,
polling_interval => '15',
tunnel_types => $tunnel_types,
local_ip => $tunnel_eth

View File

@ -87,6 +87,28 @@ describe 'cloud::network::vswitch' do
end
end
context 'when running ML2 plugin with OVS driver and without tunelling' do
before :each do
params.merge!(:enable_tunneling => false)
end
it 'configure neutron vswitch without tunneling' do
is_expected.to contain_class('neutron::agents::ml2::ovs').with(
:enable_tunneling => false,
)
end
end
context 'when running ML2 plugin with OVS driver and without l2 population' do
before :each do
params.merge!(:l2_population => false)
end
it 'configure neutron vswitch without l2 population' do
is_expected.to contain_class('neutron::agents::ml2::ovs').with(
:l2_population => false,
)
end
end
context 'when running Cisco N1KV plugin with VEM driver' do
before do
facts.merge!( :osfamily => 'RedHat' )