class Toolshed::CLI

CLI is responsible for executing the initial command

Public Instance Methods

execute(command_class, args, options = {}) click to toggle source
# File lib/toolshed/cli.rb, line 10
def execute(command_class, args, options = {})
  load_config(command_class)
  begin
    command_class.new.execute(args, options)
  rescue Toolshed::Error => e
    Toolshed.logger.fatal "An error occurred: #{e.message}"
  rescue RuntimeError => e
    Toolshed.logger.fatal "An error occurred: #{e.message}"
  end
end
load_config(command_class) click to toggle source
# File lib/toolshed/cli.rb, line 21
def load_config(command_class)
  Toolshed.add_file_log_source(command_class.class.name)
  Toolshed.logger.info "Credentials loaded from #{File.absolute_path(Toolshed::Client.instance.toolshedrc_path)}" # rubocop:disable Metrics/LineLength
rescue => e
  Toolshed.logger.fatal "Error loading your credentials: #{e.message}"
end