aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2014-10-31 16:56:46 -0700
committerelijah <elijah@riseup.net>2014-10-31 16:56:46 -0700
commitc05f0def1b5fe4863a80bdfbac3407b011053a89 (patch)
tree9f02b206df1b09f67ec231d9cbb3f1d001bf4f20
parenta9c79dbb1f8cef409b52835a3d5ee21069434f4c (diff)
downloadleap_cli-c05f0def1b5fe4863a80bdfbac3407b011053a89.tar.gz
leap_cli-c05f0def1b5fe4863a80bdfbac3407b011053a89.tar.bz2
only spit out stack trace if --debug
-rwxr-xr-xbin/leap18
-rw-r--r--lib/leap_cli/commands/pre.rb2
-rw-r--r--lib/leap_cli/config/object.rb6
-rw-r--r--lib/leap_cli/util.rb1
4 files changed, 16 insertions, 11 deletions
diff --git a/bin/leap b/bin/leap
index 6067164..c39da1c 100755
--- a/bin/leap
+++ b/bin/leap
@@ -1,7 +1,10 @@
#!/usr/bin/env ruby
-if ARGV.include?('--debug')
+if ARGV.include?('--debug') || ARGV.include?('-d')
+ DEBUG=true
require 'debugger'
+else
+ DEBUG=false
end
begin
@@ -89,13 +92,14 @@ module LeapCli::Commands
exit_status = run(ARGV)
exit(LeapCli::Util.exit_status || exit_status)
rescue StandardError => exc
- if LeapCli.log_level < 2
- if exc.respond_to? :log
- exc.log
- else
- puts "%s: %s" % [exc.class, exc.message]
- end
+ if exc.respond_to? :log
+ exc.log
else
+ puts
+ LeapCli.log :error, "%s: %s" % [exc.class, exc.message]
+ puts
+ end
+ if DEBUG
raise exc
end
end
diff --git a/lib/leap_cli/commands/pre.rb b/lib/leap_cli/commands/pre.rb
index 4bdeefe..7a64c15 100644
--- a/lib/leap_cli/commands/pre.rb
+++ b/lib/leap_cli/commands/pre.rb
@@ -21,7 +21,7 @@ module LeapCli; module Commands
switch :yes, :negatable => false
desc 'Enable debugging library (leap_cli development only)'
- switch :debug, :negatable => false
+ switch [:d, :debug], :negatable => false
desc 'Disable colors in output'
default_value true
diff --git a/lib/leap_cli/config/object.rb b/lib/leap_cli/config/object.rb
index 45144bc..a0d402b 100644
--- a/lib/leap_cli/config/object.rb
+++ b/lib/leap_cli/config/object.rb
@@ -293,14 +293,14 @@ module LeapCli
Util::log "offending string: #{value}", :indent => 1
Util::log "error message: no file '#{exc}'", :indent => 1
end
- raise exc if LeapCli.log_level >= 2
+ raise exc if DEBUG
end
rescue AssertionFailed => exc
Util.bail! do
Util::log :failed, "assertion while evaluating node '#{self.name}'"
Util::log 'assertion: %s' % exc.assertion, :indent => 1
Util::log "offending key: #{key}", :indent => 1
- raise exc if LeapCli.log_level >= 2
+ raise exc if DEBUG
end
rescue SyntaxError, StandardError => exc
Util::bail! do
@@ -308,7 +308,7 @@ module LeapCli
Util::log "offending key: #{key}", :indent => 1
Util::log "offending string: #{value}", :indent => 1
Util::log "error message: #{exc.inspect}", :indent => 1
- raise exc if LeapCli.log_level >= 2
+ raise exc if DEBUG
end
end
diff --git a/lib/leap_cli/util.rb b/lib/leap_cli/util.rb
index 43ff6f2..07ffcec 100644
--- a/lib/leap_cli/util.rb
+++ b/lib/leap_cli/util.rb
@@ -30,6 +30,7 @@ module LeapCli
#
def bail!(*message)
if block_given?
+ LeapCli.set_log_level(3)
yield
elsif message
log 0, *message