From: Felix Schäfer <[email protected]>

Signed-off-by: James Turnbull <[email protected]>
---
 lib/facter/uptime.rb      |   30 ++++++++++++++++++++----------
 lib/facter/util/uptime.rb |    6 +++---
 2 files changed, 23 insertions(+), 13 deletions(-)

diff --git a/lib/facter/uptime.rb b/lib/facter/uptime.rb
index 3a3bc86..54e6692 100644
--- a/lib/facter/uptime.rb
+++ b/lib/facter/uptime.rb
@@ -1,12 +1,5 @@
 require 'facter/util/uptime'
 
-Facter.add(:uptime) do
-    confine :operatingsystem => %w{Solaris Linux Fedora RedHat CentOS SuSE 
SLES Debian Ubuntu Gentoo AIX}
-    setcode do
-        Facter::Util::Uptime.get_uptime_simple
-    end
-end
-
 if FileTest.exists?("/proc/uptime")
     uptime = Facter::Util::Uptime.get_uptime
 
@@ -14,7 +7,24 @@ if FileTest.exists?("/proc/uptime")
         Facter.add("uptime_" + label) do
             setcode do
                 Facter::Util::Uptime.get_uptime_period(uptime, label)
-            end 
-        end 
-    end 
+            end
+        end
+    end
 end
+
+Facter.add(:uptime) do
+    confine :operatingsystem => %w{Solaris Linux Fedora RedHat CentOS SuSE 
SLES Debian Ubuntu Gentoo AIX}
+    uptime_human_readable = ""
+    if uptime_seconds = Facter.value(:uptime_seconds)
+        if uptime_days = Facter.value(:uptime_days)
+            uptime_human_readable = uptime_days + " days"
+        else
+            uptime_human_readable = Facter.value(:uptime_hours) + ":" + 
(uptime_seconds/60%60).to_s + " hours"
+        end
+    else
+        uptime_human_readable = Facter::Util::Uptime.get_uptime_simple
+    end
+    setcode do
+        uptime_human_readable
+    end
+end
\ No newline at end of file
diff --git a/lib/facter/util/uptime.rb b/lib/facter/util/uptime.rb
index c1e339b..92cdfaa 100644
--- a/lib/facter/util/uptime.rb
+++ b/lib/facter/util/uptime.rb
@@ -14,7 +14,7 @@ module Facter::Util::Uptime
 
     def self.get_uptime
         r = IO.popen("/bin/cat /proc/uptime")
-        uptime, idletime = r.readline.split(" ")        
+        uptime, idletime = r.readline.split(" ")
         r.close
         uptime_seconds = uptime.to_i
     end
@@ -27,6 +27,6 @@ module Facter::Util::Uptime
             value = seconds / 3600
         when 'seconds'
             seconds
-        end     
+        end
     end
-end   
+end
-- 
1.6.0.6


--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to