Sha256: 0562afbb78692a2c2068499baf8b4421bf8cc0316085b401cbd174bac3faede3

Contents?: true

Size: 669 Bytes

Versions: 40

Compression:

Stored size: 669 Bytes

Contents

disk_types = ["xvd","vd","sd","hd"]
total_size = 0
total_disks = 0

disk_types.each do |type|
  Dir.open("/sys/block").entries.grep(/^#{type}/).each do |d|
    size = %x{/bin/cat /sys/block/#{d}/size}.chomp
    total_size += size.to_i
    total_disks += 1
    Facter.add("disk_size_#{d}".to_sym) do
      setcode do
        size
      end
    end
  end
end

Facter.add(:disk_total_size) do
  setcode do
    total_size
  end
end

Facter.add(:disk_total_number) do
  setcode do
    total_disks
  end
end

#! /usr/bin/env ruby
%x{fdisk -l 2>/dev/null}.split("\n").each do |l|
  puts $1 if l.match(/^Disk \/dev\/(?:(?:(?:sd|hd|x?vd)[a-z])|mmcblk[0-9]+).*?(\d+) bytes/)
end

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
foreman_discovery-9.1.1 extra/disk_facts.rb
foreman_discovery-9.1.0 extra/disk_facts.rb
foreman_discovery-9.0.0 extra/disk_facts.rb
foreman_discovery-8.0.1 extra/disk_facts.rb
foreman_discovery-8.0.0 extra/disk_facts.rb
foreman_discovery-7.0.1 extra/disk_facts.rb
foreman_discovery-7.0.0 extra/disk_facts.rb
foreman_discovery-6.0.0 extra/disk_facts.rb
foreman_discovery-5.0.2 extra/disk_facts.rb
foreman_discovery-5.0.1 extra/disk_facts.rb
foreman_discovery-5.0.0 extra/disk_facts.rb
foreman_discovery-4.1.2 extra/disk_facts.rb
foreman_discovery-4.1.1 extra/disk_facts.rb
foreman_discovery-4.1.0 extra/disk_facts.rb
foreman_discovery-4.0.0 extra/disk_facts.rb
foreman_discovery-2.0.2 extra/disk_facts.rb
foreman_discovery-2.0.1 extra/disk_facts.rb
foreman_discovery-3.0.0 extra/disk_facts.rb
foreman_discovery-2.0.0 extra/disk_facts.rb
foreman_discovery-2.0.0.rc2 extra/disk_facts.rb