From: Sam Rowe <[email protected]>

hardware model
serialnumber is in a new file per James Turnbull
memory and swap sizing
processor count

Signed-off-by: Sam Rowe <[email protected]>
---
 lib/facter/hardwaremodel.rb |    5 +++++
 lib/facter/memory.rb        |   24 ++++++++++++++++++++++++
 lib/facter/processor.rb     |   11 +++++++++++
 lib/facter/serialnumber.rb  |    4 ++++
 4 files changed, 44 insertions(+), 0 deletions(-)
 create mode 100644 lib/facter/serialnumber.rb

diff --git a/lib/facter/hardwaremodel.rb b/lib/facter/hardwaremodel.rb
index 6201bdd..bbf5421 100644
--- a/lib/facter/hardwaremodel.rb
+++ b/lib/facter/hardwaremodel.rb
@@ -19,3 +19,8 @@ Facter.add(:hardwaremodel) do
         Config::CONFIG['host_cpu']
     end
 end
+
+Facter.add(:hardwaremodel) do
+    confine :operatingsystem => :"hp-ux"
+    setcode '/bin/getconf MACHINE_MODEL'
+end
diff --git a/lib/facter/memory.rb b/lib/facter/memory.rb
index 6880731..dd6c4a8 100644
--- a/lib/facter/memory.rb
+++ b/lib/facter/memory.rb
@@ -44,3 +44,27 @@ if Facter.value(:kernel) == "AIX"
         end
     end
 end
+if Facter.value(:kernel) == "HP-UX"
+    # no MemoryFree because hopefully there is none
+    if FileTest.exists?("/opt/ignite/bin/print_manifest")
+        mem = %x{/opt/ignite/bin/print_manifest}.split(/\n/).grep(/Main 
Memory:/).collect{|l| l.split[2]}
+        Facter.add(:MemorySize) do
+            setcode do
+                Facter::Memory.scale_number(mem[0].to_f,"MB")
+            end
+        end
+    end
+    swapt = %x{/usr/sbin/swapinfo -dtm}.split(/\n/).grep(/^total/)
+    swap  = swapt[0].split[1]
+    swapf = swapt[0].split[3]
+    Facter.add("SwapTotal") do
+        setcode do
+            Facter::Memory.scale_number(swap.to_f,"MB")
+        end
+    end
+    Facter.add("SwapFree") do
+        setcode do
+            Facter::Memory.scale_number(swapf.to_f,"MB")
+        end
+    end
+end
diff --git a/lib/facter/processor.rb b/lib/facter/processor.rb
index 154cced..ac8b37a 100644
--- a/lib/facter/processor.rb
+++ b/lib/facter/processor.rb
@@ -72,3 +72,14 @@ if Facter.value(:kernel) == "AIX"
         end
     end
 end
+
+if Facter.value(:kernel) == "HP-UX"
+    if FileTest.exists?("/opt/ignite/bin/print_manifest")
+        cpus = 
%x{/opt/ignite/bin/print_manifest}.split(/\n/).grep(/Processors:/).collect{|l| 
l.split[1]}
+        Facter.add("ProcessorCount") do
+            setcode do
+                cpus[0]
+            end
+        end
+    end
+end
diff --git a/lib/facter/serialnumber.rb b/lib/facter/serialnumber.rb
new file mode 100644
index 0000000..130844a
--- /dev/null
+++ b/lib/facter/serialnumber.rb
@@ -0,0 +1,4 @@
+Facter.add(:serialnumber) do
+    confine :operatingsystem => :"hp-ux"
+    setcode '/bin/getconf MACHINE_SERIAL'
+end
-- 
1.5.6.3


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