From: Peter Palfrader Date: Mon, 1 Jul 2013 11:51:18 +0000 (+0000) Subject: Read crt.new files for additional TLSA data X-Git-Url: https://git.donarmstrong.com/?p=dsa-puppet.git;a=commitdiff_plain;h=34fcd443020860dc3562eb8358fc2fc7e84a3258 Read crt.new files for additional TLSA data --- diff --git a/modules/puppetmaster/lib/puppet/parser/functions/gen_tlsa_entry.rb b/modules/puppetmaster/lib/puppet/parser/functions/gen_tlsa_entry.rb index 7c07b7c9..11ca3e49 100644 --- a/modules/puppetmaster/lib/puppet/parser/functions/gen_tlsa_entry.rb +++ b/modules/puppetmaster/lib/puppet/parser/functions/gen_tlsa_entry.rb @@ -4,13 +4,20 @@ module Puppet::Parser::Functions hostname = args.shift() port = args.shift() + res = [] if File.exist?(certfile) cmd = ['swede', 'create', '--usage=3', '--selector=1', '--mtype=1', '--certificate', certfile, '--port', port.to_s, hostname] - IO.popen(cmd, "r") {|i| - return i.read - } + IO.popen(cmd, "r") {|i| res << i.read } else - return "; certfile #{certfile} did not exist to create TLSA record for #{hostname}:#{port}." + res << "; certfile #{certfile} did not exist to create TLSA record for #{hostname}:#{port}." end + + certfile += ".new" + if File.exist?(certfile) + cmd = ['swede', 'create', '--usage=3', '--selector=1', '--mtype=1', '--certificate', certfile, '--port', port.to_s, hostname] + IO.popen(cmd, "r") {|i| res << i.read } + end + + return res.join("\n") end end