Accept empty strings for log_dir

An empty string is an acceptable value of this entry, and it forces
logging to stdout/stderr, which is useful when running on containers.

Change-Id: I79a53d59f948c19b22f883d120e1afed7439d643
This commit is contained in:
Juan Antonio Osorio Robles
2017-10-06 13:00:16 +03:00
parent c00a1b88ba
commit dbc4f7ad2a
3 changed files with 30 additions and 1 deletions

View File

@@ -111,7 +111,11 @@ class ironic::logging(
$use_syslog_real = pick($::ironic::use_syslog,$use_syslog)
$use_stderr_real = pick($::ironic::use_stderr,$use_stderr)
$log_facility_real = pick($::ironic::log_facility,$log_facility)
$log_dir_real = pick($::ironic::log_dir,$log_dir)
if $log_dir != '' {
$log_dir_real = pick($::ironic::log_dir,$log_dir)
} else {
$log_dir_real = $log_dir
}
$debug_real = pick($::ironic::debug,$debug)
oslo::log { 'ironic_config':

View File

@@ -0,0 +1,5 @@
---
fixes:
- |
It is now possible to pass empty strings to the log_dir option. This enables
logging to stdout/stderr.

View File

@@ -31,6 +31,13 @@ describe 'ironic::logging' do
}
end
let :empty_log_dir_param do
{
:log_dir => '',
}
end
shared_examples_for 'ironic-logging' do
context 'with basic logging options and default settings' do
@@ -51,6 +58,11 @@ describe 'ironic::logging' do
it_configures 'logging params unset'
end
context 'with empty log_dir' do
before { params.merge!( empty_log_dir_param ) }
it_configures 'empty log dir'
end
end
shared_examples 'basic default logging settings' do
@@ -110,6 +122,14 @@ describe 'ironic::logging' do
}
end
shared_examples 'empty log dir' do
it 'configures ironic logging with empty log dir' do
is_expected.to contain_oslo__log('ironic_config').with(
:log_dir => '',
)
end
end
on_supported_os({
:supported_os => OSDefaults.get_supported_os
}).each do |os,facts|