Merge "Add upgrade_levels configuration options"
This commit is contained in:
@@ -292,6 +292,43 @@
|
|||||||
# <service_type>:<service_name>:<endpoint_type>
|
# <service_type>:<service_name>:<endpoint_type>
|
||||||
# Defaults to 'volumev2:cinderv2:publicURL'
|
# Defaults to 'volumev2:cinderv2:publicURL'
|
||||||
#
|
#
|
||||||
|
# [*upgrade_level_cells*]
|
||||||
|
# (optional) Sets a version cap for messages sent to local cells services
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*upgrade_level_cert*]
|
||||||
|
# (optional) Sets a version cap for messages sent to cert services
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*upgrade_level_compute*]
|
||||||
|
# (optional) Sets a version cap for messages sent to compute services
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*upgrade_level_conductor*]
|
||||||
|
# (optional) Sets a version cap for messages sent to conductor services
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*upgrade_level_console*]
|
||||||
|
# (optional) Sets a version cap for messages sent to console services
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*upgrade_level_consoleauth*]
|
||||||
|
# (optional) Sets a version cap for messages sent to consoleauth services
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*upgrade_level_intercell*]
|
||||||
|
# (optional) Sets a version cap for messages sent between cells services
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*upgrade_level_network*]
|
||||||
|
# (optional) Sets a version cap for messages sent to network services
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
# [*upgrade_level_scheduler*]
|
||||||
|
# (optional) Sets a version cap for messages sent to scheduler services
|
||||||
|
# Defaults to undef
|
||||||
|
#
|
||||||
|
|
||||||
class nova(
|
class nova(
|
||||||
$ensure_package = 'present',
|
$ensure_package = 'present',
|
||||||
$database_connection = undef,
|
$database_connection = undef,
|
||||||
@@ -359,7 +396,15 @@ class nova(
|
|||||||
$notify_on_state_change = undef,
|
$notify_on_state_change = undef,
|
||||||
$os_region_name = undef,
|
$os_region_name = undef,
|
||||||
$cinder_catalog_info = 'volumev2:cinderv2:publicURL',
|
$cinder_catalog_info = 'volumev2:cinderv2:publicURL',
|
||||||
# DEPRECATED PARAMETERS
|
$upgrade_level_cells = undef,
|
||||||
|
$upgrade_level_cert = undef,
|
||||||
|
$upgrade_level_compute = undef,
|
||||||
|
$upgrade_level_conductor = undef,
|
||||||
|
$upgrade_level_console = undef,
|
||||||
|
$upgrade_level_consoleauth = undef,
|
||||||
|
$upgrade_level_intercell = undef,
|
||||||
|
$upgrade_level_network = undef,
|
||||||
|
$upgrade_level_scheduler = undef,
|
||||||
) inherits nova::params {
|
) inherits nova::params {
|
||||||
|
|
||||||
# maintain backward compatibility
|
# maintain backward compatibility
|
||||||
@@ -653,6 +698,106 @@ class nova(
|
|||||||
'cinder/os_region_name': ensure => absent;
|
'cinder/os_region_name': ensure => absent;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if $upgrade_level_cells {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/cells': value => $upgrade_level_cells;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/cells': ensure => absent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if $upgrade_level_cert {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/cert': value => $upgrade_level_cert;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/cert': ensure => absent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if $upgrade_level_compute {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/compute': value => $upgrade_level_compute;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/compute': ensure => absent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if $upgrade_level_conductor {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/conductor': value => $upgrade_level_conductor;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/conductor': ensure => absent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if $upgrade_level_console {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/console': value => $upgrade_level_console;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/console': ensure => absent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if $upgrade_level_consoleauth {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/consoleauth': value => $upgrade_level_consoleauth;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/consoleauth': ensure => absent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if $upgrade_level_intercell {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/intercell': value => $upgrade_level_intercell;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/intercell': ensure => absent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if $upgrade_level_network {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/network': value => $upgrade_level_network;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/network': ensure => absent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if $upgrade_level_scheduler {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/scheduler': value => $upgrade_level_scheduler;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
nova_config {
|
||||||
|
'upgrade_levels/scheduler': ensure => absent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
# Deprecated in Juno, removed in Kilo
|
# Deprecated in Juno, removed in Kilo
|
||||||
nova_config {
|
nova_config {
|
||||||
'DEFAULT/os_region_name': ensure => absent;
|
'DEFAULT/os_region_name': ensure => absent;
|
||||||
|
@@ -101,7 +101,16 @@ describe 'nova' do
|
|||||||
:notification_topics => 'openstack',
|
:notification_topics => 'openstack',
|
||||||
:notify_api_faults => true,
|
:notify_api_faults => true,
|
||||||
:report_interval => '60',
|
:report_interval => '60',
|
||||||
:os_region_name => 'MyRegion' }
|
:os_region_name => 'MyRegion',
|
||||||
|
:upgrade_level_cells => '1.0.0',
|
||||||
|
:upgrade_level_cert => '1.0.0',
|
||||||
|
:upgrade_level_compute => '1.0.0',
|
||||||
|
:upgrade_level_conductor => '1.0.0',
|
||||||
|
:upgrade_level_console => '1.0.0',
|
||||||
|
:upgrade_level_consoleauth => '1.0.0',
|
||||||
|
:upgrade_level_intercell => '1.0.0',
|
||||||
|
:upgrade_level_network => '1.0.0',
|
||||||
|
:upgrade_level_scheduler => '1.0.0' }
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'installs packages' do
|
it 'installs packages' do
|
||||||
@@ -134,6 +143,18 @@ describe 'nova' do
|
|||||||
is_expected.to contain_nova_config('DEFAULT/memcached_servers').with_value('memcached01:11211,memcached02:11211')
|
is_expected.to contain_nova_config('DEFAULT/memcached_servers').with_value('memcached01:11211,memcached02:11211')
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it 'configures upgrade_levels' do
|
||||||
|
is_expected.to contain_nova_config('upgrade_levels/cells').with_value('1.0.0')
|
||||||
|
is_expected.to contain_nova_config('upgrade_levels/cert').with_value('1.0.0')
|
||||||
|
is_expected.to contain_nova_config('upgrade_levels/compute').with_value('1.0.0')
|
||||||
|
is_expected.to contain_nova_config('upgrade_levels/conductor').with_value('1.0.0')
|
||||||
|
is_expected.to contain_nova_config('upgrade_levels/console').with_value('1.0.0')
|
||||||
|
is_expected.to contain_nova_config('upgrade_levels/consoleauth').with_value('1.0.0')
|
||||||
|
is_expected.to contain_nova_config('upgrade_levels/intercell').with_value('1.0.0')
|
||||||
|
is_expected.to contain_nova_config('upgrade_levels/network').with_value('1.0.0')
|
||||||
|
is_expected.to contain_nova_config('upgrade_levels/scheduler').with_value('1.0.0')
|
||||||
|
end
|
||||||
|
|
||||||
it 'configures various things' do
|
it 'configures various things' do
|
||||||
is_expected.to contain_nova_config('DEFAULT/state_path').with_value('/var/lib/nova2')
|
is_expected.to contain_nova_config('DEFAULT/state_path').with_value('/var/lib/nova2')
|
||||||
is_expected.to contain_nova_config('DEFAULT/lock_path').with_value('/var/locky/path')
|
is_expected.to contain_nova_config('DEFAULT/lock_path').with_value('/var/locky/path')
|
||||||
|
Reference in New Issue
Block a user