summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2016-07-20 23:46:48 -0700
committerelijah <elijah@riseup.net>2016-07-20 23:46:48 -0700
commit47b3bb60a20674d029950ebd39f6aacf67e81866 (patch)
treea73552a25b00f56468351d9b18fa65e278ab395f
parenta8efdb865dbea99e619c0353d707da39118e6e28 (diff)
include support for AWS via fog
-rw-r--r--leap_cli.gemspec1
-rw-r--r--lib/leap_cli/commands/common.rb2
-rw-r--r--lib/leap_cli/log.rb14
-rw-r--r--lib/leap_cli/util.rb13
4 files changed, 22 insertions, 8 deletions
diff --git a/leap_cli.gemspec b/leap_cli.gemspec
index 12fc07f..cf8c37e 100644
--- a/leap_cli.gemspec
+++ b/leap_cli.gemspec
@@ -51,6 +51,7 @@ spec = Gem::Specification.new do |s|
# network gems
s.add_runtime_dependency('sshkit', '~> 1.11')
+ s.add_runtime_dependency('fog-aws')
# crypto gems
# s.add_runtime_dependency('gpgme') # << does not build on debian jessie, so now optional.
diff --git a/lib/leap_cli/commands/common.rb b/lib/leap_cli/commands/common.rb
index d49490e..3dab2a0 100644
--- a/lib/leap_cli/commands/common.rb
+++ b/lib/leap_cli/commands/common.rb
@@ -20,7 +20,7 @@ module LeapCli; module Commands
items.each_with_index(&block)
say("q. quit")
index = ask("number 1-#{items.length}> ")
- if index.empty?
+ if index.nil? || index.empty?
next
elsif index =~ /q/
bail!
diff --git a/lib/leap_cli/log.rb b/lib/leap_cli/log.rb
index 01d372c..fe9e1b7 100644
--- a/lib/leap_cli/log.rb
+++ b/lib/leap_cli/log.rb
@@ -28,6 +28,20 @@ module LeapCli
def log_level
logger.log_level
end
+
+ #
+ # These probably should have been part of the logger originally,
+ # but they are made available here for convenience:
+ #
+
+ def bail!(*args, &block)
+ Util.bail!(*args, &block)
+ end
+
+ def assert!(*args, &block)
+ Util.assert!(*args, &block)
+ end
+
end
end
diff --git a/lib/leap_cli/util.rb b/lib/leap_cli/util.rb
index 29658da..45606b7 100644
--- a/lib/leap_cli/util.rb
+++ b/lib/leap_cli/util.rb
@@ -40,14 +40,13 @@ module LeapCli
#
# exit with error code and with a message that we are bailing out.
#
- def bail!(*message)
- if block_given?
- LeapCli.logger.log_level = 3
- yield
- elsif message
- log 0, *message
+ def bail!(*message, &block)
+ LeapCli.logger.log_level = 3 if LeapCli.logger.log_level < 3
+ if message.any?
+ log(0, *message, &block)
+ else
+ log(0, :bailing, "out", &block)
end
- log 0, :bail, ""
raise SystemExit.new(exit_status || 1)
end