Module: MCollective::Facts

Defined in:
lib/mcollective/facts.rb,
lib/mcollective/facts/base.rb,
lib/mcollective/facts/yaml_facts.rb

Overview

This is a class that gives access to the configured fact provider such as MCollectives::Facts::Facter that uses Reductive Labs facter

The actual provider is pluggable and configurable using the ‘factsource’ configuration option.

To develop a new factsource simply create a class under MCollective::Facts

and provide the following classes:

self.get_fact(fact)
self.has_fact?(fact)

You can also just inherit from MCollective::Facts::Base and provide just the

self.get_facts

method that should return a hash of facts.

Defined Under Namespace

Classes: Base, Yaml_facts

Constant Summary collapse

@@config =
nil

Class Method Summary collapse

Class Method Details

.[](fact) ⇒ Object

Get the value of a fact



35
36
37
# File 'lib/mcollective/facts.rb', line 35

def self.[](fact)
  PluginManager["facts_plugin"].get_fact(fact)
end

.get_fact(fact) ⇒ Object

Get the value of a fact



30
31
32
# File 'lib/mcollective/facts.rb', line 30

def self.get_fact(fact)
  PluginManager["facts_plugin"].get_fact(fact)
end

.has_fact?(fact, value) ⇒ Boolean

True if we know of a specific fact else false

Returns:

  • (Boolean)


25
26
27
# File 'lib/mcollective/facts.rb', line 25

def self.has_fact?(fact, value)
  PluginManager["facts_plugin"].get_fact(fact) == value ? true : false
end