diff --git a/manifests/scheduler.pp b/manifests/scheduler.pp index 61fe91558..a7f0d4758 100644 --- a/manifests/scheduler.pp +++ b/manifests/scheduler.pp @@ -20,11 +20,17 @@ # (optional) Default driver to use for the scheduler # Defaults to 'filter_scheduler' # +# [*discover_hosts_in_cells_interval*] +# (optional) This value controls how often (in seconds) the scheduler should +# attept to discover new hosts that have been added to cells. +# Defaults to $::os_service_default +# class nova::scheduler( - $enabled = true, - $manage_service = true, - $ensure_package = 'present', - $scheduler_driver = 'filter_scheduler', + $enabled = true, + $manage_service = true, + $ensure_package = 'present', + $scheduler_driver = 'filter_scheduler', + $discover_hosts_in_cells_interval = $::os_service_default, ) { include ::nova::deps @@ -40,7 +46,8 @@ class nova::scheduler( } nova_config { - 'scheduler/driver': value => $scheduler_driver; + 'scheduler/driver': value => $scheduler_driver; + 'scheduler/discover_hosts_in_cells_interval': value => $discover_hosts_in_cells_interval; } # TODO(aschultz): old options, remove in P diff --git a/releasenotes/notes/discover_hosts_in_cells_interval-fcee1903fdaa4684.yaml b/releasenotes/notes/discover_hosts_in_cells_interval-fcee1903fdaa4684.yaml new file mode 100644 index 000000000..40b17b934 --- /dev/null +++ b/releasenotes/notes/discover_hosts_in_cells_interval-fcee1903fdaa4684.yaml @@ -0,0 +1,6 @@ +--- +features: + - | + Expose the ``discover_hosts_in_cells_interval`` option in the scheduler + manifest. Changing this option is needed for bare metal clouds starting + with the Ocata release. diff --git a/spec/classes/nova_scheduler_spec.rb b/spec/classes/nova_scheduler_spec.rb index da87c2a74..812d2cbdb 100644 --- a/spec/classes/nova_scheduler_spec.rb +++ b/spec/classes/nova_scheduler_spec.rb @@ -22,6 +22,7 @@ describe 'nova::scheduler' do it { is_expected.to contain_nova_config('DEFAULT/scheduler_driver').with_ensure('absent') } it { is_expected.to contain_nova_config('scheduler/driver').with_value('filter_scheduler') } + it { is_expected.to contain_nova_config('scheduler/discover_hosts_in_cells_interval').with_value('') } context 'with manage_service as false' do let :params do @@ -50,6 +51,14 @@ describe 'nova::scheduler' do it { is_expected.to contain_nova_config('scheduler/driver').with_value('custom driver') } end + context 'with discover_hosts_in_cells_interval' do + let :params do + { :discover_hosts_in_cells_interval => 15 } + end + + it { is_expected.to contain_nova_config('scheduler/discover_hosts_in_cells_interval').with_value(15) } + end + context 'with default database parameters' do let :pre_condition do "include nova"