-Facter.add("raidcontroller") do
+Facter.add("smartarraycontroller") do
confine :kernel => :linux
ENV["PATH"]="/bin:/sbin:/usr/bin:/usr/sbin"
setcode do
ishp = "false"
lspciexists = system "/bin/bash -c 'which lspci >&/dev//null'"
if $?.exitstatus == 0
- %x{lspci}.each { |s|
+ %x{lspci 2>&1}.each { |s|
ishp = "true" if s =~ /RAID bus controller: (.*) Smart Array/
}
end
- ishp
+ ishp == "true"
end
end
is3w = "true" if x =~ /Vendor: 3ware/
}
end
- is3w
+ is3w == "true"
end
end
+
+Facter.add("swraid") do
+ confine :kernel => :linux
+ setcode do
+ swraid = "false"
+ if FileTest.exist?("/proc/mdstat") && FileTest.exist?("/sbin/mdadm")
+ IO.foreach("/proc/mdstat") { |x|
+ swraid = "true" if x =~ /md[0-9]+ : active/
+ }
+ end
+ swraid == "true"
+ end
+end
+