X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;ds=sidebyside;f=facts%2Fraidcontroller.rb;h=f2834c2dcf3a72abc81f4ee7f94523a9b8a8dfb5;hb=eb8d9c9ed20621f4081cb4049c4a6227aacb5f59;hp=e7445f447629db2adc45795ef9485ad8fba56f15;hpb=43ee2776befa567c66cd46d67ef123a5f16155d8;p=mirror%2Fdsa-puppet.git diff --git a/facts/raidcontroller.rb b/facts/raidcontroller.rb index e7445f447..f2834c2dc 100644 --- a/facts/raidcontroller.rb +++ b/facts/raidcontroller.rb @@ -1,20 +1,34 @@ -Facter.add("raidcontroller") 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| - ishp = "true" if s =~ /RAID bus controller: (.*) Smart Array/ - } - end - ishp - end +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| + ishp = "true" if s =~ /RAID bus controller: (.*) Smart Array/ + } + end + ishp + end end + Facter.add("mptcontroller") do - confine :kernel => :linux - setcode do - FileTest.exist?("/proc/mpt/summary") - end + confine :kernel => :linux + setcode do + FileTest.exist?("/proc/mpt/summary") + end +end + +Facter.add("3warecontroller") do + confine :kernel => :linux + setcode do + is3w = "false" + if FileTest.exist?("/proc/scsi/scsi") + IO.foreach("/proc/scsi/scsi") { |x| + is3w = "true" if x =~ /Vendor: 3ware/ + } + end + is3w + end end