You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Affected Puppet, Ruby, OS and module versions/distributions
Puppet: 7.14
Ruby: 3.0
Distribution: Fedora
Module version: 6.0.0
How to reproduce (e.g Puppet code you use)
Return FreeBSD to metadata.json, run github actions
What are you seeing
Github actions fail. Local tests succeed.
What behaviour did you expect instead
Github actions work
Output log
1) logrotate::conf => /etc/logrotate.conf is expected to contain File[/etc/logrotate.conf] with owner => "root", group => "root", ensure => "present", mode => "0644" and content =~ /\ninclude \/etc\/logrotate.d\n/
Failure/Error:
is_expected.to contain_file('/etc/logrotate.conf').with(
'owner' => 'root',
'group' => 'root',
'ensure' => 'present',
'mode' => '0644'
).with_content(%r{\ninclude \/etc\/logrotate.d\n})
expected that the catalogue would contain File[/etc/logrotate.conf] with group set to "root" but it is set to "wheel", and parameter content set to /\ninclude \/etc\/logrotate.d\n/ but it is set to "# THIS FILE IS AUTOMATICALLY DISTRIBUTED BY PUPPET.\n# ANY CHANGES WILL BE OVERWRITTEN.\n\ncreate\nrotate 4\nweekly\n\n# configurable file rotations\ninclude /usr/local/etc/logrotate.d\n"
Diff:
@@ -1,4 +1,12 @@
-root
+wheel
-(?-mix:\ninclude \/etc\/logrotate.d\n)
+# THIS FILE IS AUTOMATICALLY DISTRIBUTED BY PUPPET.
+# ANY CHANGES WILL BE OVERWRITTEN.
+
+create
+rotate 4
+weekly
+
+# configurable file rotations
+include /usr/local/etc/logrotate.d
# ./spec/defines/conf_spec.rb:110:in `block (3 levels) in <top (required)>'
2) logrotate::conf => /etc/logrotate_custom.config is expected to contain File[/etc/logrotate_custom.config] with owner => "root", group => "root", ensure => "present", mode => "0644" and content =~ /\ninclude \/etc\/logrotate.d\n/
Failure/Error:
is_expected.to contain_file('/etc/logrotate_custom.config').with(
'owner' => 'root',
'group' => 'root',
'ensure' => 'present',
'mode' => '0644'
).with_content(%r{\ninclude \/etc\/logrotate.d\n})
expected that the catalogue would contain File[/etc/logrotate_custom.config] with group set to "root" but it is set to "wheel", and parameter content set to /\ninclude \/etc\/logrotate.d\n/ but it is set to "# THIS FILE IS AUTOMATICALLY DISTRIBUTED BY PUPPET.\n# ANY CHANGES WILL BE OVERWRITTEN.\n\ncreate\nrotate 4\nweekly\n\n# configurable file rotations\ninclude /usr/local/etc/logrotate.d\n"
Diff:
@@ -1,4 +1,12 @@
-root
+wheel
-(?-mix:\ninclude \/etc\/logrotate.d\n)
+# THIS FILE IS AUTOMATICALLY DISTRIBUTED BY PUPPET.
+# ANY CHANGES WILL BE OVERWRITTEN.
+
+create
+rotate 4
+weekly
+
+# configurable file rotations
+include /usr/local/etc/logrotate.d
# ./spec/defines/conf_spec.rb:438:in `block (3 levels) in <top (required)>'
Any additional information you'd like to impart
Opened so we don't lose track of the working FreeBSD support
The text was updated successfully, but these errors were encountered:
Note that FreeBSD isn't working on a live system with release 6.0.0. A regression occurred somewhere after commit 63f2b13 where all of the $logrotate::root_user and $logrotate::root_group variables got replaced with the hard-coded value root.
In the test output log shown above, both examples want to create files with the group root which does not exist on the BSD-family OSs including FreeBSD and ye olde Solaris (RIP). The correct group is wheel on those platforms.
Here's some output from me moving from an old version of this module (which did mostly work) to the latest:
Error: /Stage[main]/Logrotate::Hourly/File[/usr/local/etc/logrotate.d/hourly]/group: change from 'wheel' to 'root' failed: Could not find group root
Digging a bit more, looks like 6.1.0 fixes the actual problem, but the spec for the conf defined type doesn't test across all platforms so the output above is wrong still.
Affected Puppet, Ruby, OS and module versions/distributions
How to reproduce (e.g Puppet code you use)
Return FreeBSD to
metadata.json
, run github actionsWhat are you seeing
Github actions fail. Local tests succeed.
What behaviour did you expect instead
Github actions work
Output log
Any additional information you'd like to impart
Opened so we don't lose track of the working FreeBSD support
The text was updated successfully, but these errors were encountered: