diff --git a/lib/refrepo/gen/puppet/kwollectg5k.rb b/lib/refrepo/gen/puppet/kwollectg5k.rb index c787212a15d79eff0c6f4e71b8a87b3e859d185f..1eec6bcf572b48d1b7d83cd796201d33a8eddb91 100644 --- a/lib/refrepo/gen/puppet/kwollectg5k.rb +++ b/lib/refrepo/gen/puppet/kwollectg5k.rb @@ -1,4 +1,5 @@ require 'refrepo/hash/hash' +require 'erb' def generate_puppet_kwollectg5k(options) @@ -26,7 +27,9 @@ def generate_puppet_kwollectg5k(options) site['clusters'].sort.each { |cluster_uid, cluster| cluster['nodes'].each_sort_by_node_uid { |node_uid, node| - ipmi_credentials = credentials.fetch(site_uid, {}).fetch(cluster_uid, "").sub(" ", ":") + ipmi_credentials = credentials.fetch(site_uid, {}).fetch(cluster_uid, "").split(" ") + ipmi_credentials.map! { |s| ERB::Util.url_encode(s) } + ipmi_credentials = ipmi_credentials.join(":") output = ERB.new(File.read(File.expand_path('templates/kwollect-node.erb', File.dirname(__FILE__))), nil, '-').result(binding) output_file = Pathname("#{options[:output_dir]}//platforms/production/modules/generated/files/grid5000/kwollect/#{site_uid}/#{node_uid}.conf")