# File lib/kafo/base_context.rb, line 20 def self.clear_caches @facts = nil @facter_path = nil end
# File lib/kafo/base_context.rb, line 31 def self.facter_path @facter_path ||= PuppetCommand.search_puppet_path('facter') end
# File lib/kafo/base_context.rb, line 25 def self.facts @facts ||= begin symbolize(JSON.load(%x#{facter_path} --json`) || {}) end end
# File lib/kafo/base_context.rb, line 9 def self.symbolize(data) case data when Hash Hash[data.map { |key, value| [key.to_sym, symbolize(value)] }] when Array data.map { |v| symbolize(v) } else data end end
# File lib/kafo/base_context.rb, line 3 def facts self.class.facts end