Class: Facter::OptionStore

Inherits:
Object
  • Object
show all
Defined in:
lib/facter/framework/core/options/option_store.rb

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.blockObject

Returns the value of attribute block.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def block
  @block
end

.block_listObject

Returns the value of attribute block_list.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def block_list
  @block_list
end

.blocked_factsObject

Returns the value of attribute blocked_facts.



37
38
39
# File 'lib/facter/framework/core/options/option_store.rb', line 37

def blocked_facts
  @blocked_facts
end

.cacheObject

Returns the value of attribute cache.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def cache
  @cache
end

.cliObject

Returns the value of attribute cli.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def cli
  @cli
end

.colorObject

Returns the value of attribute color.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def color
  @color
end

.configObject

Returns the value of attribute config.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def config
  @config
end

.config_file_custom_dirObject

Returns the value of attribute config_file_custom_dir.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def config_file_custom_dir
  @config_file_custom_dir
end

.config_file_external_dirObject

Returns the value of attribute config_file_external_dir.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def config_file_external_dir
  @config_file_external_dir
end

.custom_factsObject (readonly)

Returns the value of attribute custom_facts.



37
38
39
# File 'lib/facter/framework/core/options/option_store.rb', line 37

def custom_facts
  @custom_facts
end

.debugObject

Returns the value of attribute debug.



37
38
39
# File 'lib/facter/framework/core/options/option_store.rb', line 37

def debug
  @debug
end

.default_external_dirObject

Returns the value of attribute default_external_dir.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def default_external_dir
  @default_external_dir
end

.external_dirObject



78
79
80
81
82
# File 'lib/facter/framework/core/options/option_store.rb', line 78

def external_dir
  return fallback_external_dir if @external_dir.empty? && @external_facts

  @external_dir
end

.external_factsObject (readonly)

Returns the value of attribute external_facts.



37
38
39
# File 'lib/facter/framework/core/options/option_store.rb', line 37

def external_facts
  @external_facts
end

.fact_groupsObject

Returns the value of attribute fact_groups.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def fact_groups
  @fact_groups
end

.jsonObject

Returns the value of attribute json.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def json
  @json
end

.log_levelObject

Returns the value of attribute log_level.



37
38
39
# File 'lib/facter/framework/core/options/option_store.rb', line 37

def log_level
  @log_level
end

.puppetObject

Returns the value of attribute puppet.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def puppet
  @puppet
end

.rubyObject (readonly)

Returns the value of attribute ruby.



37
38
39
# File 'lib/facter/framework/core/options/option_store.rb', line 37

def ruby
  @ruby
end

.show_legacyObject

Returns the value of attribute show_legacy.



37
38
39
# File 'lib/facter/framework/core/options/option_store.rb', line 37

def show_legacy
  @show_legacy
end

.strictObject

Returns the value of attribute strict.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def strict
  @strict
end

.timingObject

Returns the value of attribute timing.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def timing
  @timing
end

.traceObject

Returns the value of attribute trace.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def trace
  @trace
end

.ttlsObject

Returns the value of attribute ttls.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def ttls
  @ttls
end

.user_queryObject

Returns the value of attribute user_query.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def user_query
  @user_query
end

.verboseObject

Returns the value of attribute verbose.



37
38
39
# File 'lib/facter/framework/core/options/option_store.rb', line 37

def verbose
  @verbose
end

.yamlObject

Returns the value of attribute yaml.



40
41
42
# File 'lib/facter/framework/core/options/option_store.rb', line 40

def yaml
  @yaml
end

Class Method Details

.allObject



47
48
49
50
51
52
53
54
# File 'lib/facter/framework/core/options/option_store.rb', line 47

def all
  options = {}
  instance_variables.each do |iv|
    variable_name = iv.to_s.delete('@')
    options[variable_name.to_sym] = OptionStore.send(variable_name.to_sym)
  end
  options
end

.custom_dirObject



90
91
92
93
94
# File 'lib/facter/framework/core/options/option_store.rb', line 90

def custom_dir
  return @config_file_custom_dir unless @custom_dir.any?

  @custom_dir
end

.custom_dir=(*dirs) ⇒ Object



96
97
98
99
100
101
# File 'lib/facter/framework/core/options/option_store.rb', line 96

def custom_dir=(*dirs)
  @ruby = true

  @custom_dir = [*dirs]
  @custom_dir.flatten!
end

.fallback_external_dirObject



199
200
201
202
203
# File 'lib/facter/framework/core/options/option_store.rb', line 199

def fallback_external_dir
  return @config_file_external_dir if @config_file_external_dir.any?

  @default_external_dir
end

.no_block=(bool) ⇒ Object



66
67
68
# File 'lib/facter/framework/core/options/option_store.rb', line 66

def no_block=(bool)
  @block = !bool
end

.no_cache=(bool) ⇒ Object



70
71
72
# File 'lib/facter/framework/core/options/option_store.rb', line 70

def no_cache=(bool)
  @cache = !bool
end

.no_color=(bool) ⇒ Object



74
75
76
# File 'lib/facter/framework/core/options/option_store.rb', line 74

def no_color=(bool)
  @color = !bool
end

.no_custom_facts=(bool) ⇒ Object



122
123
124
125
126
127
128
129
# File 'lib/facter/framework/core/options/option_store.rb', line 122

def no_custom_facts=(bool)
  if bool == false
    @custom_facts = true
    @ruby = true
  else
    @custom_facts = false
  end
end

.no_external_facts=(bool) ⇒ Object



131
132
133
# File 'lib/facter/framework/core/options/option_store.rb', line 131

def no_external_facts=(bool)
  @external_facts = !bool
end

.no_ruby=(bool) ⇒ Object



56
57
58
59
60
61
62
63
64
# File 'lib/facter/framework/core/options/option_store.rb', line 56

def no_ruby=(bool)
  if bool
    @ruby = false
    @custom_facts = false
    @blocked_facts << 'ruby'
  else
    @ruby = true
  end
end

.resetObject



163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
# File 'lib/facter/framework/core/options/option_store.rb', line 163

def reset
  @debug = false
  @verbose = false
  # TODO: constant is not yet available when running puppet facts
  @log_level = :warn
  @show_legacy = true
  @ruby = true
  @user_query = []
  @json = false
  @cache = true
  @yaml = false
  @puppet = false
  @ttls = []
  @block = true
  @cli = nil
  reset_config
end

.reset_configObject



181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
# File 'lib/facter/framework/core/options/option_store.rb', line 181

def reset_config
  @custom_facts = true
  @blocked_facts = []
  @external_facts = true
  @config = nil
  @strict = false
  @config_file_custom_dir = []
  @config_file_external_dir = []
  @default_external_dir = []
  @fact_groups = {}
  @block_list = []
  @color = true
  @trace = false
  @timing = false
  @external_dir = []
  @custom_dir = []
end

.set(key, value) ⇒ Object



159
160
161
# File 'lib/facter/framework/core/options/option_store.rb', line 159

def set(key, value)
  send("#{key}=".to_sym, value)
end