Switch defaults for nova upgrade parameters to $::os_service_default

This patch switches defaults for nova upgrade parameters to our common
fact $::os_service_default, that help us to reduce lines of code
for huge main nova class.

Change-Id: I29d238c12a39cac0bf564d6332b7bce2552bd5b4
This commit is contained in:
Denis Egorenko
2016-06-16 12:31:20 +03:00
parent 8cf16a7b60
commit 3b7dd02d0c
3 changed files with 38 additions and 129 deletions

View File

@@ -343,7 +343,7 @@
# things such as cinder volume attach work. If you don't set this # things such as cinder volume attach work. If you don't set this
# and you have multiple endpoints, you will get AmbiguousEndpoint # and you have multiple endpoints, you will get AmbiguousEndpoint
# exceptions in the nova API service. # exceptions in the nova API service.
# Defaults to undef # Defaults to $::os_service_default
# #
# [*cinder_catalog_info*] # [*cinder_catalog_info*]
# (optional) Info to match when looking for cinder in the service # (optional) Info to match when looking for cinder in the service
@@ -353,39 +353,39 @@
# #
# [*upgrade_level_cells*] # [*upgrade_level_cells*]
# (optional) Sets a version cap for messages sent to local cells services # (optional) Sets a version cap for messages sent to local cells services
# Defaults to undef # Defaults to $::os_service_default
# #
# [*upgrade_level_cert*] # [*upgrade_level_cert*]
# (optional) Sets a version cap for messages sent to cert services # (optional) Sets a version cap for messages sent to cert services
# Defaults to undef # Defaults to $::os_service_default
# #
# [*upgrade_level_compute*] # [*upgrade_level_compute*]
# (optional) Sets a version cap for messages sent to compute services # (optional) Sets a version cap for messages sent to compute services
# Defaults to undef # Defaults to $::os_service_default
# #
# [*upgrade_level_conductor*] # [*upgrade_level_conductor*]
# (optional) Sets a version cap for messages sent to conductor services # (optional) Sets a version cap for messages sent to conductor services
# Defaults to undef # Defaults to $::os_service_default
# #
# [*upgrade_level_console*] # [*upgrade_level_console*]
# (optional) Sets a version cap for messages sent to console services # (optional) Sets a version cap for messages sent to console services
# Defaults to undef # Defaults to $::os_service_default
# #
# [*upgrade_level_consoleauth*] # [*upgrade_level_consoleauth*]
# (optional) Sets a version cap for messages sent to consoleauth services # (optional) Sets a version cap for messages sent to consoleauth services
# Defaults to undef # Defaults to $::os_service_default
# #
# [*upgrade_level_intercell*] # [*upgrade_level_intercell*]
# (optional) Sets a version cap for messages sent between cells services # (optional) Sets a version cap for messages sent between cells services
# Defaults to undef # Defaults to $::os_service_default
# #
# [*upgrade_level_network*] # [*upgrade_level_network*]
# (optional) Sets a version cap for messages sent to network services # (optional) Sets a version cap for messages sent to network services
# Defaults to undef # Defaults to $::os_service_default
# #
# [*upgrade_level_scheduler*] # [*upgrade_level_scheduler*]
# (optional) Sets a version cap for messages sent to scheduler services # (optional) Sets a version cap for messages sent to scheduler services
# Defaults to undef # Defaults to $::os_service_default
# #
# [*use_ipv6*] # [*use_ipv6*]
# (optional) Use IPv6 or not. # (optional) Use IPv6 or not.
@@ -491,17 +491,17 @@ class nova(
$notification_topics = $::os_service_default, $notification_topics = $::os_service_default,
$notify_api_faults = false, $notify_api_faults = false,
$notify_on_state_change = undef, $notify_on_state_change = undef,
$os_region_name = undef, $os_region_name = $::os_service_default,
$cinder_catalog_info = 'volumev2:cinderv2:publicURL', $cinder_catalog_info = 'volumev2:cinderv2:publicURL',
$upgrade_level_cells = undef, $upgrade_level_cells = $::os_service_default,
$upgrade_level_cert = undef, $upgrade_level_cert = $::os_service_default,
$upgrade_level_compute = undef, $upgrade_level_compute = $::os_service_default,
$upgrade_level_conductor = undef, $upgrade_level_conductor = $::os_service_default,
$upgrade_level_console = undef, $upgrade_level_console = $::os_service_default,
$upgrade_level_consoleauth = undef, $upgrade_level_consoleauth = $::os_service_default,
$upgrade_level_intercell = undef, $upgrade_level_intercell = $::os_service_default,
$upgrade_level_network = undef, $upgrade_level_network = $::os_service_default,
$upgrade_level_scheduler = undef, $upgrade_level_scheduler = $::os_service_default,
$use_ipv6 = $::os_service_default, $use_ipv6 = $::os_service_default,
$purge_config = false, $purge_config = false,
# DEPRECATED PARAMETERS # DEPRECATED PARAMETERS
@@ -727,114 +727,17 @@ class nova(
nova_config { 'DEFAULT/notify_on_state_change': ensure => absent; } nova_config { 'DEFAULT/notify_on_state_change': ensure => absent; }
} }
if $os_region_name { nova_config {
nova_config { 'cinder/os_region_name': value => $os_region_name;
'cinder/os_region_name': value => $os_region_name; 'upgrade_levels/cells': value => $upgrade_level_cells;
} 'upgrade_levels/cert': value => $upgrade_level_cert;
} 'upgrade_levels/compute': value => $upgrade_level_compute;
else { 'upgrade_levels/conductor': value => $upgrade_level_conductor;
nova_config { 'upgrade_levels/console': value => $upgrade_level_console;
'cinder/os_region_name': ensure => absent; 'upgrade_levels/consoleauth': value => $upgrade_level_consoleauth;
} 'upgrade_levels/intercell': value => $upgrade_level_intercell;
} 'upgrade_levels/network': value => $upgrade_level_network;
'upgrade_levels/scheduler': value => $upgrade_level_scheduler;
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;
}
} }
} }

View File

@@ -0,0 +1,6 @@
---
other:
- Switch nova upgrade parameters to $::os_service_default fact.
This change will help to reduce lines of code and also by
default all values have 'undef' value and can be easily switched
to common fact.

View File

@@ -61,7 +61,7 @@ describe 'nova' do
is_expected.to contain_nova_config('DEFAULT/use_ipv6').with_value('<SERVICE DEFAULT>') is_expected.to contain_nova_config('DEFAULT/use_ipv6').with_value('<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/transport_url').with_value('<SERVICE DEFAULT>') is_expected.to contain_nova_config('DEFAULT/transport_url').with_value('<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/rpc_response_timeout').with_value('<SERVICE DEFAULT>') is_expected.to contain_nova_config('DEFAULT/rpc_response_timeout').with_value('<SERVICE DEFAULT>')
is_expected.to contain_nova_config('cinder/os_region_name').with_ensure('absent') is_expected.to contain_nova_config('cinder/os_region_name').with_value('<SERVICE DEFAULT>')
is_expected.to contain_nova_config('cinder/catalog_info').with('value' => 'volumev2:cinderv2:publicURL') is_expected.to contain_nova_config('cinder/catalog_info').with('value' => 'volumev2:cinderv2:publicURL')
end end