Add support for swift_owner_headers option

Change-Id: Ie0cf2206d58d1789d2e4985e0b8bf5e18a6d3e12
This commit is contained in:
Takashi Kajinami 2025-02-24 19:16:46 +09:00
parent 88d364c885
commit 4c95be36b4
3 changed files with 13 additions and 0 deletions

@ -128,6 +128,10 @@
# Optional but requires write_affinity to be set.
# Defaults to $facts['os_service_default'].
#
# [*swift_owner_headers*]
# (optional) The headers whose values will only be shown to swift_owners.
# Defaults to $facts['os_service_default'].
#
# [*client_timeout*]
# (optional) Configures client_timeout for swift proxy-server.
# Defaults to $facts['os_service_default'].
@ -231,6 +235,7 @@ class swift::proxy(
$write_affinity = undef,
$write_affinity_node_count = $facts['os_service_default'],
$write_affinity_handoff_delete_count = $facts['os_service_default'],
$swift_owner_headers = $facts['os_service_default'],
$client_timeout = $facts['os_service_default'],
$keepalive_timeout = $facts['os_service_default'],
$node_timeout = $facts['os_service_default'],
@ -314,6 +319,7 @@ class swift::proxy(
'app:proxy-server/max_containers_whitelist': value => $max_containers_whitelist;
'app:proxy-server/timing_expiry': value => $timing_expiry;
'app:proxy-server/request_node_count': value => $request_node_count;
'app:proxy-server/swift_owner_headers': value => join(any2array($swift_owner_headers), ',');
'app:proxy-server/node_timeout': value => $node_timeout;
'app:proxy-server/recoverable_node_timeout': value => $recoverable_node_timeout;
'app:proxy-server/allow_open_expired': value => $allow_open_expired;

@ -0,0 +1,4 @@
---
features:
- |
The new ``swift::proxy::swift_owner_headers`` parameter has been added.

@ -90,6 +90,7 @@ describe 'swift::proxy' do
it { should contain_swift_proxy_config('app:proxy-server/write_affinity').with_value('<SERVICE DEFAULT>') }
it { should contain_swift_proxy_config('app:proxy-server/write_affinity_node_count').with_value('<SERVICE DEFAULT>') }
it { should contain_swift_proxy_config('app:proxy-server/write_affinity_handoff_delete_count').with_value('<SERVICE DEFAULT>') }
it { should contain_swift_proxy_config('app:proxy-server/swift_owner_headers').with_value('<SERVICE DEFAULT>') }
it { should contain_swift_proxy_config('app:proxy-server/node_timeout').with_value('<SERVICE DEFAULT>') }
it { should contain_swift_proxy_config('app:proxy-server/recoverable_node_timeout').with_value('<SERVICE DEFAULT>') }
it { should contain_swift_proxy_config('app:proxy-server/allow_open_expired').with_value('<SERVICE DEFAULT>') }
@ -156,6 +157,7 @@ describe 'swift::proxy' do
:write_affinity => 'r1',
:write_affinity_node_count => '2 * replicas',
:write_affinity_handoff_delete_count => 'auto',
:swift_owner_headers => ['x-container-read', 'x-container-write'],
:client_timeout => '120',
:keepalive_timeout => '121',
:node_timeout => '20',
@ -200,6 +202,7 @@ describe 'swift::proxy' do
it { should contain_swift_proxy_config('app:proxy-server/write_affinity').with_value('r1') }
it { should contain_swift_proxy_config('app:proxy-server/write_affinity_node_count').with_value('2 * replicas') }
it { should contain_swift_proxy_config('app:proxy-server/write_affinity_handoff_delete_count').with_value('auto') }
it { should contain_swift_proxy_config('app:proxy-server/swift_owner_headers').with_value('x-container-read,x-container-write') }
it { should contain_swift_proxy_config('app:proxy-server/node_timeout').with_value('20') }
it { should contain_swift_proxy_config('app:proxy-server/recoverable_node_timeout').with_value('15') }
it { should contain_swift_proxy_config('app:proxy-server/allow_open_expired').with_value(false) }