Class: NodeSpec::NodeConfigurations

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/nodespec/node_configurations.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeNodeConfigurations

Returns a new instance of NodeConfigurations.



10
11
12
13
14
# File 'lib/nodespec/node_configurations.rb', line 10

def initialize
  filename = ENV['NODESPEC_CONFIG'] || 'nodespec_config.yml'
  data = YAML.load_file(filename) if File.exists?(filename)
  @predefined_settings = data || {}
end

Instance Attribute Details

#current_settingsObject (readonly)

Returns the value of attribute current_settings.



8
9
10
# File 'lib/nodespec/node_configurations.rb', line 8

def current_settings
  @current_settings
end

Instance Method Details

#get(node_name, options = nil) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/nodespec/node_configurations.rb', line 16

def get(node_name, options = nil)
  case options
  when String
    raise "Cannot find nodespec settings '#{options}'" unless @predefined_settings.key?(options)
    opts = @predefined_settings[options]
  when Hash
    opts = options
  else
    opts = {}
  end
  Node.new(node_name, opts)
end