Use common implementation to manage audit middleware options

Depends-on: https://review.opendev.org/957837
Change-Id: Ia50ff96191de8280f0d36122e666abe098d66c2c
Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com>
This commit is contained in:
Takashi Kajinami
2025-08-19 15:44:59 +09:00
parent ca4b8e58b6
commit 222f3de3ba
2 changed files with 17 additions and 22 deletions

View File

@@ -9,12 +9,12 @@
# Defaults to $facts['os_service_default']
#
# [*audit_map_file*]
# (Optional) Path to audit map file for octavia-api service.
# (Optional) Path to audit map file.
# Defaults to $facts['os_service_default']
#
# [*ignore_req_list*]
# (Optional) Comma separated list of octavia REST API HTTP methods
# to be ignored during audit logging.
# (Optional) List of REST API HTTP methods to be ignored during audit
# logging.
# Defaults to $facts['os_service_default']
#
class octavia::audit (
@@ -26,8 +26,11 @@ class octavia::audit (
include octavia::deps
octavia_config {
'audit/enabled': value => $enabled;
'audit/audit_map_file': value => $audit_map_file;
'audit/ignore_req_list': value => join(any2array($ignore_req_list), ',');
'audit/enabled': value => $enabled;
}
oslo::audit { 'octavia_config':
audit_map_file => $audit_map_file,
ignore_req_list => $ignore_req_list,
}
}

View File

@@ -11,8 +11,10 @@ describe 'octavia::audit' do
it 'configures default values' do
is_expected.to contain_octavia_config('audit/enabled').with_value('<SERVICE DEFAULT>')
is_expected.to contain_octavia_config('audit/audit_map_file').with_value('<SERVICE DEFAULT>')
is_expected.to contain_octavia_config('audit/ignore_req_list').with_value('<SERVICE DEFAULT>')
is_expected.to contain_oslo__audit('octavia_config').with(
:audit_map_file => '<SERVICE DEFAULT>',
:ignore_req_list => '<SERVICE DEFAULT>',
)
end
end
@@ -21,26 +23,16 @@ describe 'octavia::audit' do
{
:enabled => true,
:audit_map_file => '/etc/octavia/api_audit_map.conf',
:ignore_req_list => 'GET,POST',
:ignore_req_list => ['GET', 'POST'],
}
end
it 'configures specified values' do
is_expected.to contain_octavia_config('audit/enabled').with_value(true)
is_expected.to contain_octavia_config('audit/audit_map_file').with_value('/etc/octavia/api_audit_map.conf')
is_expected.to contain_octavia_config('audit/ignore_req_list').with_value('GET,POST')
end
end
context 'with ignore_req_list in array' do
let :params do
{
is_expected.to contain_oslo__audit('octavia_config').with(
:audit_map_file => '/etc/octavia/api_audit_map.conf',
:ignore_req_list => ['GET', 'POST'],
}
end
it 'configures ignore_req_list with a comma separated list' do
is_expected.to contain_octavia_config('audit/ignore_req_list').with_value('GET,POST')
)
end
end
end