Skip to content

Commit

Permalink
Fix unwanted rendering of secrets
Browse files Browse the repository at this point in the history
  • Loading branch information
alinetskyi committed Jan 31, 2019
1 parent 7d8beea commit 89fdc61
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 5 deletions.
9 changes: 7 additions & 2 deletions lib/microkube/renderer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,16 @@ class Renderer
JWT_KEY = 'config/secrets/barong.key'.freeze
SSH_KEY = 'config/secrets/kite.key'.freeze

def render(overwrite = false)
def initialize(overwrite = false)
@overwrite = overwrite
end

def render
render_keys

Dir.glob("#{TEMPLATE_PATH}/**/*.erb").each do |file|
output_file = template_name(file)
next if !overwrite && File.exist?(output_file)
next if !@overwrite && File.exist?(output_file)
render_file(file, output_file)
end
end
Expand Down Expand Up @@ -47,6 +51,7 @@ def render_keys
end

def generate_key(filename, public: false)
return if !@overwrite && File.exist?(filename)
key = SSHKey.generate(type: 'RSA', bits: 2048)
File.open(filename, 'w') { |file| file.puts(key.private_key) }
File.open("#{filename}.pub", 'w') { |file| file.puts(key.ssh_public_key) } if public
Expand Down
4 changes: 2 additions & 2 deletions lib/tasks/render.rake
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ require_relative '../microkube/renderer'
namespace :render do
desc 'Render configuration files, to rewrite existing files set OVERWRITE'
task :config do
renderer = Microkube::Renderer.new
renderer.render(ENV['OVERWRITE'])
renderer = Microkube::Renderer.new(ENV['OVERWRITE'])
renderer.render
end
end
4 changes: 3 additions & 1 deletion spec/microkube/renderer_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,8 @@
end
end

let(:renderer) { Microkube::Renderer.new(true) }

describe '.render' do
it 'should call exact amount of helper functions' do
number_of_files = Dir.glob('./templates/**/*.erb').length
Expand All @@ -90,7 +92,7 @@
expect(renderer).to receive(:render_file).exactly(number_of_files).times
expect(renderer).to receive(:template_name).exactly(number_of_files).times

renderer.render(true)
renderer.render
end
end
end

0 comments on commit 89fdc61

Please sign in to comment.