summaryrefslogtreecommitdiffstats
path: root/lib/facter/id.rb
diff options
context:
space:
mode:
authorMartin Englund <martin@englund.nu>2008-11-12 15:03:14 +0100
committerMartin Englund <martin@englund.nu>2008-11-12 15:03:14 +0100
commit7ddea77c2dd469333430a41f5257e0be0de9be29 (patch)
tree65035ee4c0cfeabd9d7fecbca6cb8c0691b302f4 /lib/facter/id.rb
parentfd07cd25dbecfc5b6e4531e8b2af70ffcb01b419 (diff)
downloadfacter-7ddea77c2dd469333430a41f5257e0be0de9be29.tar.gz
facter-7ddea77c2dd469333430a41f5257e0be0de9be29.tar.xz
facter-7ddea77c2dd469333430a41f5257e0be0de9be29.zip
Fix for #1727 - id fact should not rely on whoami on Solaris
Signed-off-by: Martin Englund <martin@englund.nu>
Diffstat (limited to 'lib/facter/id.rb')
-rw-r--r--lib/facter/id.rb13
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/facter/id.rb b/lib/facter/id.rb
index 6157991..d620096 100644
--- a/lib/facter/id.rb
+++ b/lib/facter/id.rb
@@ -1,4 +1,15 @@
Facter.add(:id) do
- confine :operatingsystem => %w{Solaris Linux Fedora RedHat CentOS SuSE SLES Debian Ubuntu Gentoo AIX}
+ confine :operatingsystem => %w{Linux Fedora RedHat CentOS SuSE SLES Debian Ubuntu Gentoo AIX}
setcode "whoami"
end
+
+Facter.add(:id) do
+ confine :operatingsystem => %w{Solaris}
+ setcode do
+ if %x{id} =~ /^uid=\d+\((\S+)\)/
+ $1
+ else
+ nil
+ end
+ end
+end