I have been using the yo61 logrotate module from puppetforge (
https://forge.puppet.com/yo61/logrotate), which seems to be the most
popular, but it recently stopped working, with many errors about undefined
parameters.

The issue seems to be the use of the string 'undef' as a default value; for
example:

define logrotate::rule(
>                         $create_owner   = 'undef',
>

Later on in the code, there are comparisons against the actual string
'undef'; for example:


  if ($create_owner != 'undef') and ($create_mode == 'undef') {
>     fail("Logrotate::Rule[${name}]: create_owner requires create_mode")
>    }


Regardless of whether this is best practice, these comparisons are now
failing, apparently because the string 'undef' is now treated as the value
undef. I've confirmed this by printing the string with notify (prints
nothing when it's 'undef'), and changing it to something else, which does
print.

I'm not sure exactly when this changed or if it's intended behavior or a
bug, but it does seem odd that now apparently 'undef' === undef

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CAEo6%3DKYjAx286r9NNvKtGU3PscrAZ77H5_HXc9CXO1LLa552sg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to