Sha256: b105e877337080503df9b36b73c80b273141109b7508483ff6c2a5b2f233e67f
Contents?: true
Size: 1.47 KB
Versions: 3
Compression:
Stored size: 1.47 KB
Contents
require 'belafonte' require 'colorize' require 'table_print' require 'ey-core' require 'ey-core/cli/helpers/core' module Ey module Core module Cli class Subcommand < Belafonte::App include Ey::Core::Cli::Helpers::Core def setup $stdout = stdout $stderr = stderr $stdin = stdin $kernel = kernel end def run_handle super rescue Ey::Core::Response::Error => e if ENV["DEBUG"] puts e.inspect puts e.backtrace end handle_core_error(e) rescue => e if ENV["DEBUG"] puts e.inspect puts e.backtrace end stderr.puts "Error:".red stderr.puts Wrapomatic.wrap(e.message, indents: 1) raise SystemExit.new(255) end #TODO: a lot more errors that would could handle with nice messages, eventually this should probably be it's own class def handle_core_error(e) stderr.puts "Error: #{e.error_type}".red (e.response.body["errors"] || [e.message]).each do |message| stderr.puts Wrapomatic.wrap(message, indents: 1) end if e.is_a?(Ey::Core::Response::Unauthorized) stderr.puts "Check the contents of ~/.ey-core vs https://cloud.engineyard.com/cli" end raise SystemExit.new(255) end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ey-core-3.6.6 | lib/ey-core/cli/subcommand.rb |
ey-core-3.4.5 | lib/ey-core/cli/subcommand.rb |
ey-core-3.6.5 | lib/ey-core/cli/subcommand.rb |