Class: Central::Machine::CloudConfig::NodeGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/central/machine/cloud_config/node_generator.rb

Instance Method Summary collapse

Instance Method Details

#erb(template, vars) ⇒ Object

Parameters:

  • template (String)
  • vars (Hash)


21
22
23
# File 'lib/central/machine/cloud_config/node_generator.rb', line 21

def erb(template, vars)
  ERB.new(template).result(OpenStruct.new(vars).instance_eval { binding })
end

#generate(opts) ⇒ Object

Parameters:

  • opts (Hash)


9
10
11
# File 'lib/central/machine/cloud_config/node_generator.rb', line 9

def generate(opts)
  user_data(opts)
end

#user_data(vars) ⇒ Object

Parameters:

  • vars (Hash)


14
15
16
17
# File 'lib/central/machine/cloud_config/node_generator.rb', line 14

def user_data(vars)
  cloudinit_template = File.join(__dir__, '/cloudinit.yml')
  erb(File.read(cloudinit_template), vars)
end