diff --git a/manifests/services/bgpvpn.pp b/manifests/services/bgpvpn.pp index 19eaf8ef5..bda844ef5 100644 --- a/manifests/services/bgpvpn.pp +++ b/manifests/services/bgpvpn.pp @@ -54,11 +54,15 @@ class neutron::services::bgpvpn ( tag => ['openstack', 'neutron-package'], }) - if !is_service_default($service_providers) { - # default value is uncommented setting, so we should not touch it at all - neutron_bgpvpn_service_config { 'service_providers/service_provider': - value => $service_providers, - } + if is_service_default($service_providers) { + # NOTE(tkajinam): bgpvpn requires the additional 'default' value. + $service_providers_real = 'BGPVPN:Dummy:networking_bgpvpn.neutron.services.service_drivers.driver_api.BGPVPNDriver:default' + } else { + $service_providers_real = $service_providers + } + + neutron_bgpvpn_service_config { 'service_providers/service_provider': + value => $service_providers_real, } resources { 'neutron_bgpvpn_service_config': diff --git a/spec/classes/neutron_services_bgpvpn_spec.rb b/spec/classes/neutron_services_bgpvpn_spec.rb index 4cd63880a..060b57677 100644 --- a/spec/classes/neutron_services_bgpvpn_spec.rb +++ b/spec/classes/neutron_services_bgpvpn_spec.rb @@ -50,6 +50,14 @@ describe 'neutron::services::bgpvpn' do :refreshonly => 'true', ) end + + it 'configures networking_bgpvpn.conf' do + should contain_neutron_bgpvpn_service_config( + 'service_providers/service_provider' + ).with_value( + 'BGPVPN:Dummy:networking_bgpvpn.neutron.services.service_drivers.driver_api.BGPVPNDriver:default' + ) + end end context 'with multiple service providers' do