Class: Puppet::Node::Facts
Overview
Manage a given node’s facts. This either accepts facts and stores them, or returns facts for a given node.
Defined Under Namespace
Modules: NodeExpirer
Classes: ActiveRecord, Couch, Facter, InventoryActiveRecord, Memory, Rest, Yaml
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from Indirector
indirects
Methods included from Util::Pson
pson_create
Constructor Details
#initialize(name, values = {}) ⇒ Facts
Returns a new instance of Facts.
34
35
36
37
38
39
|
# File 'lib/puppet/node/facts.rb', line 34
def initialize(name, values = {})
@name = name
@values = values
add_internal
end
|
Instance Attribute Details
Returns the value of attribute name.
26
27
28
|
# File 'lib/puppet/node/facts.rb', line 26
def name
@name
end
|
Returns the value of attribute values.
26
27
28
|
# File 'lib/puppet/node/facts.rb', line 26
def values
@values
end
|
Class Method Details
.from_pson(data) ⇒ Object
70
71
72
73
74
75
|
# File 'lib/puppet/node/facts.rb', line 70
def self.from_pson(data)
result = new(data['name'], data['values'])
result.timestamp = Time.parse(data['timestamp'])
result.expiration = Time.parse(data['expiration'])
result
end
|
Instance Method Details
#==(other) ⇒ Object
57
58
59
60
|
# File 'lib/puppet/node/facts.rb', line 57
def ==(other)
return false unless self.name == other.name
strip_internal == other.send(:strip_internal)
end
|
#add_local_facts ⇒ Object
28
29
30
31
32
|
# File 'lib/puppet/node/facts.rb', line 28
def add_local_facts
values["clientcert"] = Puppet.settings[:certname]
values["clientversion"] = Puppet.version.to_s
values["environment"] ||= Puppet.settings[:environment]
end
|
#downcase_if_necessary ⇒ Object
41
42
43
44
45
46
47
48
|
# File 'lib/puppet/node/facts.rb', line 41
def downcase_if_necessary
return unless Puppet.settings[:downcasefacts]
Puppet.warning "DEPRECATION NOTICE: Fact downcasing is deprecated; please disable (20080122)"
values.each do |fact, value|
values[fact] = value.downcase if value.is_a?(String)
end
end
|
#stringify ⇒ Object
Convert all fact values into strings.
51
52
53
54
55
|
# File 'lib/puppet/node/facts.rb', line 51
def stringify
values.each do |fact, value|
values[fact] = value.to_s
end
end
|
#timestamp ⇒ Object
66
67
68
|
# File 'lib/puppet/node/facts.rb', line 66
def timestamp
self.values[:_timestamp]
end
|
#timestamp=(time) ⇒ Object
62
63
64
|
# File 'lib/puppet/node/facts.rb', line 62
def timestamp=(time)
self.values[:_timestamp] = time
end
|
#to_pson(*args) ⇒ Object
77
78
79
80
81
82
83
84
|
# File 'lib/puppet/node/facts.rb', line 77
def to_pson(*args)
{
'expiration' => expiration,
'name' => name,
'timestamp' => timestamp,
'values' => strip_internal,
}.to_pson(*args)
end
|