diff --git a/manifests/init.pp b/manifests/init.pp index 90cbe22b..88e1ce2e 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -41,6 +41,10 @@ # (optional) Default protocol to use when connecting to glance # Defaults to 'keystone'. 'https' is the only other valid option for SSL # +# [*enabled_drivers*] +# (optional) List of drivers to load during service initialization. +# Defaults to 'pxe_ipmitool'. +# # [*control_exchange*] # (optional) What RPC queue/exchange to use # Defaults to openstack @@ -121,6 +125,7 @@ class ironic ( $verbose = false, $debug = false, $auth_strategy = 'keystone', + $enabled_drivers = 'pxe_ipmitool', $control_exchange = 'openstack', $rpc_backend = 'ironic.openstack.common.rpc.impl_kombu', $rabbit_password = false, @@ -289,4 +294,11 @@ class ironic ( } } + + if $enabled_drivers { + ironic_config { + 'DEFAULT/enabled_drivers': value => $enabled_drivers; + } + } + } diff --git a/spec/classes/ironic_init_spec.rb b/spec/classes/ironic_init_spec.rb index 5c2f6eee..1707386b 100644 --- a/spec/classes/ironic_init_spec.rb +++ b/spec/classes/ironic_init_spec.rb @@ -26,6 +26,7 @@ describe 'ironic' do { :package_ensure => 'present', :verbose => false, :debug => false, + :enabled_drivers => 'pxe_ipmitool', :rabbit_host => '127.0.0.1', :rabbit_port => 5672, :rabbit_hosts => false, @@ -122,6 +123,10 @@ describe 'ironic' do ) end + it 'configures enabled_drivers' do + should contain_ironic_config('DEFAULT/enabled_drivers').with_value( params[:enabled_drivers] ) + end + it 'configures credentials for rabbit' do should contain_ironic_config('DEFAULT/rabbit_userid').with_value( params[:rabbit_user] ) should contain_ironic_config('DEFAULT/rabbit_password').with_value( params[:rabbit_password] )