puppet-sysctl
puppet-sysctl copied to clipboard
Enforce exec should find sysctl, test from path
On Gentoo, sysctl is in /usr/sbin
, not /sbin
, resulting in an error like:
Error: Could not find command '/sbin/sysctl'
Error: /Stage[main]/Sysctl[vm.min_free_kbytes]/Exec[enforce-sysctl-value-vm.min_free_kbytes]/returns: change from notrun
Other exec
s in this defined type use the path to find sysctl
, so the enforce exec
should as well.
This also fixes the indentation of the block to be consistent with the rest of the file.
Until this is merged I did a workaround:
class gentoo_base::puppet_sysctl_path_workaround {
# This is to work around https://github.com/thias/puppet-sysctl/pull/43 until it's merged
file { '/sbin/sysctl':
ensure => link,
target => '/usr/sbin/sysctl',
replace => false,
} ->
Class['sysctl::base']
# To remove it later
# exec { 'rm /sbin/sysctl':
# onlyif => 'test -L /sbin/sysctl',
# }
}
Can we merge it please?
Encountered this one as well. A merge would be nice.
This fix is working and can be merged :+1: