HEX
Server: Apache
System: Linux msm5694.mjhst.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: camjab_ssh (1000)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //usr/share/ruby/vendor_ruby/facter/processor.rb
# Fact: processor
#
# Purpose:
#   Additional Facts about the machine's CPUs.
#
# Resolution:
#   Utilizes values from the processors structured fact, which itself
#   uses various methods to collect CPU information, with implementation
#   dependent upon the OS of the system in question.
#
# Caveats:
#

# processor.rb
#
# Copyright (C) 2006 Mooter Media Ltd
# Author: Matthew Palmer <matt@solutionsfirst.com.au>
#


# We have to enumerate these outside a Facter.add block to get the processorN
# descriptions iteratively (but we need them inside the Facter.add block above
# for tests on processorcount to work)
processors = Facter.value(:processors)
if processors && (processor_list = processors["models"])
  processor_list.each_with_index do |processor, i|
    Facter.add("processor#{i}") do
      setcode { processor }
    end
  end
end

Facter.add("ProcessorCount") do
  confine do
    !Facter.value(:processors).nil?
  end

  setcode do
    if (processorcount = processors["count"])
      processorcount
    else
      nil
    end
  end
end

Facter.add("Processor") do
  confine :kernel => [:dragonfly,:freebsd,:openbsd]
  setcode do
    Facter::Util::POSIX.sysctl("hw.model")
  end
end