def add_yaml_entry(hiera_key)
hiera_item = @config_items.fetch( hiera_key )
full_yaml_string = hiera_item.to_yaml_s
if full_yaml_string.nil?
raise InternalError.new("YAML string for #{hiera_key} is not set")
end
debug( "Adding #{hiera_key} to #{File.basename(@file)}" )
yaml = IO.readlines(@file)
line_written = false
File.open(@file, "w") do |f|
yaml.each do |line|
line.chomp!
if line =~ /^classes\s*:/
f.puts full_yaml_string
f.puts line
line_written = true
else
f.puts line
end
end
unless line_written
f.puts full_yaml_string
end
end
end