Isolated network support
This patch aims to enable support for both: - isolated metadata which enable metadata support on isolated networks. - metadata networks which allows for serving metadata requests coming from a dedicated metadata access network Change-Id: I0e892c4183bd2bf1910b9b6758c1759475053529 Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
This commit is contained in:
@@ -21,7 +21,9 @@ describe 'neutron::agents::dhcp' do
|
||||
:root_helper => 'sudo neutron-rootwrap /etc/neutron/rootwrap.conf',
|
||||
:use_namespaces => true,
|
||||
:dnsmasq_config_file => nil,
|
||||
:dhcp_delete_namespaces => false }
|
||||
:dhcp_delete_namespaces => false,
|
||||
:enable_isolated_metadata => false,
|
||||
:enable_metadata_network => false }
|
||||
end
|
||||
|
||||
|
||||
@@ -43,6 +45,8 @@ describe 'neutron::agents::dhcp' do
|
||||
should contain_neutron_dhcp_agent_config('DEFAULT/root_helper').with_value(p[:root_helper]);
|
||||
should contain_neutron_dhcp_agent_config('DEFAULT/use_namespaces').with_value(p[:use_namespaces]);
|
||||
should contain_neutron_dhcp_agent_config('DEFAULT/dhcp_delete_namespaces').with_value(p[:dhcp_delete_namespaces]);
|
||||
should contain_neutron_dhcp_agent_config('DEFAULT/enable_isolated_metadata').with_value(p[:enable_isolated_metadata]);
|
||||
should contain_neutron_dhcp_agent_config('DEFAULT/enable_metadata_network').with_value(p[:enable_metadata_network]);
|
||||
end
|
||||
|
||||
it 'installs neutron dhcp agent package' do
|
||||
@@ -67,6 +71,35 @@ describe 'neutron::agents::dhcp' do
|
||||
:require => 'Class[Neutron]'
|
||||
)
|
||||
end
|
||||
|
||||
context 'when enabling isolated metadata only' do
|
||||
before :each do
|
||||
params.merge!(:enable_isolated_metadata => true, :enable_metadata_network => false)
|
||||
end
|
||||
it 'should enable isolated_metadata only' do
|
||||
should contain_neutron_dhcp_agent_config('DEFAULT/enable_isolated_metadata').with_value('true');
|
||||
should contain_neutron_dhcp_agent_config('DEFAULT/enable_metadata_network').with_value('false');
|
||||
end
|
||||
end
|
||||
|
||||
context 'when enabling isolated metadata with metadata networks' do
|
||||
before :each do
|
||||
params.merge!(:enable_isolated_metadata => true, :enable_metadata_network => true)
|
||||
end
|
||||
it 'should enable both isolated_metadata and metadata_network' do
|
||||
should contain_neutron_dhcp_agent_config('DEFAULT/enable_isolated_metadata').with_value('true');
|
||||
should contain_neutron_dhcp_agent_config('DEFAULT/enable_metadata_network').with_value('true');
|
||||
end
|
||||
end
|
||||
|
||||
context 'when enabling metadata networks without enabling isolated metadata' do
|
||||
before :each do
|
||||
params.merge!(:enable_isolated_metadata => false, :enable_metadata_network => true)
|
||||
end
|
||||
it 'should fails to configure metadata_network without isolated_metadata' do
|
||||
expect { subject }.to raise_error(Puppet::Error, /enable_metadata_network to true requires enable_isolated_metadata also enabled./)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
shared_examples_for 'neutron dhcp agent with dnsmasq_config_file specified' do
|
||||
|
Reference in New Issue
Block a user