From 5886b4fe23ae9647713c19639a81e15a2adaebed Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Mon, 26 Feb 2024 01:21:58 +0900 Subject: [PATCH] healthcheck: Expose ignore_proxied_requests parameter Depends-on: https://review.opendev.org/909807 Change-Id: I36065f01f7e945596b5d23cd8078381c0dccedf3 --- manifests/healthcheck.pp | 26 +++++++++------ ...ore_proxied_requests-101b6da3021366cc.yaml | 5 +++ spec/classes/keystone_healthcheck_spec.rb | 33 ++++++++++--------- 3 files changed, 39 insertions(+), 25 deletions(-) create mode 100644 releasenotes/notes/healthcheck-ignore_proxied_requests-101b6da3021366cc.yaml diff --git a/manifests/healthcheck.pp b/manifests/healthcheck.pp index f02622a81..954fae0c1 100644 --- a/manifests/healthcheck.pp +++ b/manifests/healthcheck.pp @@ -18,6 +18,10 @@ # healthcheck information. # Defaults to $facts['os_service_default'] # +# [*ignore_proxied_requests*] +# (Optional) Ignore requests with proxy headers +# Defaults to $facts['os_service_default'] +# # [*disable_by_file_path*] # (Optional) Check the presence of a file to determine if an application # is running on a port. @@ -29,20 +33,22 @@ # Defaults to $facts['os_service_default'] # class keystone::healthcheck ( - $detailed = $facts['os_service_default'], - $backends = $facts['os_service_default'], - $allowed_source_ranges = $facts['os_service_default'], - $disable_by_file_path = $facts['os_service_default'], - $disable_by_file_paths = $facts['os_service_default'], + $detailed = $facts['os_service_default'], + $backends = $facts['os_service_default'], + $allowed_source_ranges = $facts['os_service_default'], + $ignore_proxied_requests = $facts['os_service_default'], + $disable_by_file_path = $facts['os_service_default'], + $disable_by_file_paths = $facts['os_service_default'], ) { include keystone::deps oslo::healthcheck { 'keystone_config': - detailed => $detailed, - backends => $backends, - allowed_source_ranges => $allowed_source_ranges, - disable_by_file_path => $disable_by_file_path, - disable_by_file_paths => $disable_by_file_paths, + detailed => $detailed, + backends => $backends, + allowed_source_ranges => $allowed_source_ranges, + ignore_proxied_requests => $ignore_proxied_requests, + disable_by_file_path => $disable_by_file_path, + disable_by_file_paths => $disable_by_file_paths, } } diff --git a/releasenotes/notes/healthcheck-ignore_proxied_requests-101b6da3021366cc.yaml b/releasenotes/notes/healthcheck-ignore_proxied_requests-101b6da3021366cc.yaml new file mode 100644 index 000000000..d9f73682a --- /dev/null +++ b/releasenotes/notes/healthcheck-ignore_proxied_requests-101b6da3021366cc.yaml @@ -0,0 +1,5 @@ +--- +features: + - | + The new ``keystone::healthcheck::ignore_proxied_requests`` parameter has + been added. diff --git a/spec/classes/keystone_healthcheck_spec.rb b/spec/classes/keystone_healthcheck_spec.rb index d6eba7c09..37a3ebf8b 100644 --- a/spec/classes/keystone_healthcheck_spec.rb +++ b/spec/classes/keystone_healthcheck_spec.rb @@ -11,11 +11,12 @@ describe 'keystone::healthcheck' do it 'configures default values' do is_expected.to contain_oslo__healthcheck('keystone_config').with( - :detailed => '', - :backends => '', - :allowed_source_ranges => '', - :disable_by_file_path => '', - :disable_by_file_paths => '', + :detailed => '', + :backends => '', + :allowed_source_ranges => '', + :ignore_proxied_requests => '', + :disable_by_file_path => '', + :disable_by_file_paths => '', ) end end @@ -23,21 +24,23 @@ describe 'keystone::healthcheck' do context 'with specific parameters' do let :params do { - :detailed => true, - :backends => ['disable_by_file'], - :allowed_source_ranges => ['10.0.0.0/24', '10.0.1.0/24'], - :disable_by_file_path => '/etc/keystone/healthcheck/disabled', - :disable_by_file_paths => ['5000:/etc/keystone/healthcheck/disabled'], + :detailed => true, + :backends => ['disable_by_file'], + :allowed_source_ranges => ['10.0.0.0/24', '10.0.1.0/24'], + :ignore_proxied_requests => false, + :disable_by_file_path => '/etc/keystone/healthcheck/disabled', + :disable_by_file_paths => ['5000:/etc/keystone/healthcheck/disabled'], } end it 'configures specified values' do is_expected.to contain_oslo__healthcheck('keystone_config').with( - :detailed => true, - :backends => ['disable_by_file'], - :allowed_source_ranges => ['10.0.0.0/24', '10.0.1.0/24'], - :disable_by_file_path => '/etc/keystone/healthcheck/disabled', - :disable_by_file_paths => ['5000:/etc/keystone/healthcheck/disabled'], + :detailed => true, + :backends => ['disable_by_file'], + :allowed_source_ranges => ['10.0.0.0/24', '10.0.1.0/24'], + :ignore_proxied_requests => false, + :disable_by_file_path => '/etc/keystone/healthcheck/disabled', + :disable_by_file_paths => ['5000:/etc/keystone/healthcheck/disabled'], ) end end