Currently we only require Facter 1.5.0 for Puppet 0.25.x I believe.
I have this patch I'm needing to do to fix the Process.groups= issue on 10.6
module Puppet::Util::SUIDManager
include Puppet::Util::Warnings
extend Forwardable
to_delegate_to_process = [ :euid=, :euid, :egid=, :egid,
:uid=, :uid, :gid=, :gid, :groups=, :groups ]
# *** Only needs to be done on 10.6 ****
if Facter['kernel'].value == 'Darwin'
to_delegate_to_process.delete(:groups=)
# Process.groups= broken on 10.6 http://openradar.appspot.com/7791698
# stub method out for OS X.
def self.groups=(grouplist)
return true
end
end
to_delegate_to_process.each do |method|
def_delegator Process, method
module_function method
end
# *** Only needs to be done on 10.4 ****
if Facter['kernel'].value == 'Darwin'
# Cannot change real UID on Darwin so we set euid
alias :uid :euid
alias :gid :egid
end
The problem is that the facts that let us distinguish between OS X
versions weren't introduced until Facter 1.5.5, and I don't want to
add some execs to shell out to 'sw_vers' to work it out, even if I
only do it conditionally for cases where the relevant fact isn't
there.
Would anyone be really upset if I raised an exception here if you're
on OS X and have a Facter version < 1.5.5 ? I'm happy to make the
executive decision for OS X support that 1.5.5 is required, given the
core facts that were provided, but I understand if you all think
that's horrible having different version requirements for different
platforms.
Don't stress too much about the actual stubbing out call, this will go
through normal code review soon.
--
nigel
--
You received this message because you are subscribed to the Google Groups
"Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-dev?hl=en.