Class: BigShift::Cli

Inherits:
Object
  • Object
show all
Defined in:
lib/bigshift/cli.rb

Instance Method Summary collapse

Constructor Details

#initialize(argv, options = {}) ⇒ Cli

Returns a new instance of Cli.



22
23
24
25
# File 'lib/bigshift/cli.rb', line 22

def initialize(argv, options={})
  @argv = argv.dup
  @factory_factory = options[:factory_factory] || Factory.method(:new)
end

Instance Method Details

#runObject



27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/bigshift/cli.rb', line 27

def run
  begin
    setup
    unload
    transfer
    load
    cleanup
    nil
  rescue Aws::Errors::MissingRegionError, Aws::Sigv4::Errors::MissingCredentialsError => e
    raise CliError.new('AWS configuration missing or malformed: ' + e.message, e.backtrace, @usage)
  rescue Signet::AuthorizationError => e
    raise CliError.new('GCP configuration missing or malformed: ' + e.message, e.backtrace, @usage)
  end
end