class Facter::ExternalFactLoader

Public Instance Methods

custom_facts() click to toggle source
# File lib/facter/framework/core/fact_loaders/external_fact_loader.rb, line 5
def custom_facts
  @custom_facts = load_custom_facts
end
external_facts() click to toggle source
# File lib/facter/framework/core/fact_loaders/external_fact_loader.rb, line 9
def external_facts
  @external_facts = load_external_facts
end
load_fact(fact_name) click to toggle source
# File lib/facter/framework/core/fact_loaders/external_fact_loader.rb, line 13
def load_fact(fact_name)
  build_custom_facts(LegacyFacter.collection.custom_fact(fact_name)) || []
end

Private Instance Methods

build_custom_facts(custom_facts_to_load) click to toggle source
# File lib/facter/framework/core/fact_loaders/external_fact_loader.rb, line 24
def build_custom_facts(custom_facts_to_load)
  custom_facts_to_load&.map do |k, v|
    loaded_fact = LoadedFact.new(k.to_s, nil, :custom)
    loaded_fact.is_env = v.options[:is_env] if v.options[:is_env]
    loaded_fact
  end
end
load_custom_facts() click to toggle source
# File lib/facter/framework/core/fact_loaders/external_fact_loader.rb, line 19
def load_custom_facts
  custom_facts_to_load = LegacyFacter.collection.custom_facts
  build_custom_facts(custom_facts_to_load) || []
end
load_external_facts() click to toggle source
# File lib/facter/framework/core/fact_loaders/external_fact_loader.rb, line 32
def load_external_facts
  external_facts = []

  external_facts_to_load = LegacyFacter.collection.external_facts

  external_facts_to_load&.each do |k, v|
    loaded_fact = LoadedFact.new(k.to_s, nil, :external)
    loaded_fact.file = v.options[:file]
    loaded_fact.is_env = v.options[:is_env]
    external_facts << loaded_fact
  end

  external_facts
end