From 51fb645e07b0bd2b567fd44e465acdfc958d817a Mon Sep 17 00:00:00 2001 From: elijah Date: Wed, 25 Jun 2014 12:47:05 -0700 Subject: ensure that monitor key directories exist before trying to generate the monitor ssh keys --- lib/leap_cli/commands/compile.rb | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/leap_cli/commands/compile.rb b/lib/leap_cli/commands/compile.rb index e96cb6a..63c2047 100644 --- a/lib/leap_cli/commands/compile.rb +++ b/lib/leap_cli/commands/compile.rb @@ -50,14 +50,16 @@ module LeapCli # keys, and every monitor node has a copy of the private monitor key. # def generate_monitor_ssh_keys - priv_key_file = :monitor_priv_key - pub_key_file = :monitor_pub_key + priv_key_file = path(:monitor_priv_key) + pub_key_file = path(:monitor_pub_key) unless file_exists?(priv_key_file, pub_key_file) - cmd = %(ssh-keygen -N '' -C 'monitor' -t ecdsa -b 521 -f '%s') % path(priv_key_file) + ensure_dir(File.dirname(priv_key_file)) + ensure_dir(File.dirname(pub_key_file)) + cmd = %(ssh-keygen -N '' -C 'monitor' -t ecdsa -b 521 -f '%s') % priv_key_file assert_run! cmd if file_exists?(priv_key_file, pub_key_file) - log :created, path(priv_key_file) - log :created, path(pub_key_file) + log :created, priv_key_file + log :created, pub_key_file else log :failed, 'to create monitor ssh keys' end -- cgit v1.2.3