From 93b2eb187e58aa8910ea2eab5baf642483927e2d Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Mon, 18 Jul 2022 11:51:26 +0900 Subject: [PATCH] Use $::os_service_default instead of undef Setting value => undef leaves the parameter umanaged. This replaces undef by $::os_service_default to ensure the actual service default value is used by default. Change-Id: Ib30a067785787a51db61b77358db6807853993f9 --- manifests/proxy.pp | 32 +++++++++++++++++++++----------- spec/classes/swift_proxy_spec.rb | 5 +++++ 2 files changed, 26 insertions(+), 11 deletions(-) diff --git a/manifests/proxy.pp b/manifests/proxy.pp index 9577faf9..12cc8b01 100644 --- a/manifests/proxy.pp +++ b/manifests/proxy.pp @@ -94,19 +94,19 @@ # [*write_affinity_node_count*] # (optional) Configures write_affinity_node_count for proxy-server. # Optional but requires write_affinity to be set. -# Defaults to undef. +# Defaults to $::os_service_default. # # [*client_timeout*] # (optional) Configures client_timeout for swift proxy-server. -# Defaults to undef. +# Defaults to $::os_service_default. # # [*node_timeout*] # (optional) Configures node_timeout for swift proxy-server -# Defaults to undef. +# Defaults to $::os_service_default. # # [*recoverable_node_timeout*] # (optional) Configures recoverable_node_timeout for swift proxy-server -# Defaults to undef. +# Defaults to $::os_service_default. # # [*enabled*] # (optional) Should the service be enabled. @@ -180,10 +180,10 @@ class swift::proxy( $max_containers_whitelist = $::os_service_default, $read_affinity = undef, $write_affinity = undef, - $write_affinity_node_count = undef, - $client_timeout = undef, - $node_timeout = undef, - $recoverable_node_timeout = undef, + $write_affinity_node_count = $::os_service_default, + $client_timeout = $::os_service_default, + $node_timeout = $::os_service_default, + $recoverable_node_timeout = $::os_service_default, $manage_service = true, $enabled = true, $package_ensure = 'present', @@ -198,7 +198,7 @@ class swift::proxy( validate_legacy(Boolean, 'validate_bool', $allow_account_management) validate_legacy(Array, 'validate_array', $pipeline) - if($write_affinity_node_count and ! $write_affinity) { + if (!is_service_default($write_affinity_node_count) and !$write_affinity) { fail('Usage of write_affinity_node_count requires write_affinity to be set') } @@ -260,8 +260,6 @@ class swift::proxy( 'app:proxy-server/account_autocreate': value => $account_autocreate; 'app:proxy-server/max_containers_per_account': value => $max_containers_per_account; 'app:proxy-server/max_containers_whitelist': value => $max_containers_whitelist; - 'app:proxy-server/write_affinity': value => $write_affinity; - 'app:proxy-server/write_affinity_node_count': value => $write_affinity_node_count; 'app:proxy-server/node_timeout': value => $node_timeout; 'app:proxy-server/recoverable_node_timeout': value => $recoverable_node_timeout; } @@ -278,6 +276,18 @@ class swift::proxy( } } + if $write_affinity { + swift_proxy_config { + 'app:proxy-server/write_affinity': value => $write_affinity; + 'app:proxy-server/write_affinity_node_count': value => $write_affinity_node_count; + } + } else { + swift_proxy_config { + 'app:proxy-server/write_affinity': value => $::os_service_default; + 'app:proxy-server/write_affinity_node_count': value => $::os_service_default; + } + } + if $read_affinity { swift_proxy_config { 'app:proxy-server/sorting_method': value => 'affinity'; diff --git a/spec/classes/swift_proxy_spec.rb b/spec/classes/swift_proxy_spec.rb index f87ed2b9..581e7ffe 100644 --- a/spec/classes/swift_proxy_spec.rb +++ b/spec/classes/swift_proxy_spec.rb @@ -61,6 +61,7 @@ describe 'swift::proxy' do it { should contain_swift_proxy_config('DEFAULT/log_level').with_value('INFO') } it { should contain_swift_proxy_config('DEFAULT/log_headers').with_value('False') } it { should contain_swift_proxy_config('DEFAULT/log_address').with_value('/dev/log') } + it { should contain_swift_proxy_config('DEFAULT/client_timeout').with_value('') } it { should contain_swift_proxy_config('pipeline:main/pipeline').with_value( ['catch_errors', 'gatekeeper', 'healthcheck', 'proxy-logging', 'cache', 'listing_formats', 'tempauth', 'copy', 'proxy-logging', 'proxy-server'].join(' ')) } @@ -76,6 +77,10 @@ describe 'swift::proxy' do it { should contain_swift_proxy_config('app:proxy-server/account_autocreate').with_value('true') } it { should contain_swift_proxy_config('app:proxy-server/max_containers_per_account').with_value(0) } it { should contain_swift_proxy_config('app:proxy-server/max_containers_whitelist').with_value('') } + it { should contain_swift_proxy_config('app:proxy-server/write_affinity').with_value('') } + it { should contain_swift_proxy_config('app:proxy-server/write_affinity_node_count').with_value('') } + it { should contain_swift_proxy_config('app:proxy-server/node_timeout').with_value('') } + it { should contain_swift_proxy_config('app:proxy-server/recoverable_node_timeout').with_value('') } it { should contain_service('swift-proxy-server').with_require([ 'Class[Swift::Proxy::Catch_errors]',