class Kafo::PuppetConfigurer

Attributes

logger[R]

Public Class Methods

new(settings = {}) click to toggle source
# File lib/kafo/puppet_configurer.rb, line 7
def initialize(settings = {})
  @settings = {'reports' => ''}.merge(settings)
  @logger = KafoConfigure.logger
  @temp_file = Tempfile.new(['kafo_puppet', '.conf'])
end

Public Instance Methods

[](key) click to toggle source
# File lib/kafo/puppet_configurer.rb, line 17
def [](key)
  @settings[key]
end
[]=(key, value) click to toggle source
# File lib/kafo/puppet_configurer.rb, line 21
def []=(key, value)
  @settings[key] = value
end
config_path() click to toggle source
# File lib/kafo/puppet_configurer.rb, line 13
def config_path
  @temp_file.path
end
write_config() click to toggle source
# File lib/kafo/puppet_configurer.rb, line 25
def write_config
  @logger.debug("Writing Puppet config file at #{@temp_file.path}")
  @temp_file.open
  @temp_file.truncate(0)
  @temp_file.puts '[main]'
  @settings.keys.sort.each do |key|
    @temp_file.puts "#{key} = #{@settings[key]}"
  end
ensure
  @temp_file.close
end