Module: PgExport::Roles::Interactive

Includes:
CliSpinnable
Defined in:
lib/pg_export/roles/interactive.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.extended(_) ⇒ Object



10
11
12
# File 'lib/pg_export/roles/interactive.rb', line 10

def self.extended(_)
  puts 'Interactive mode, for restoring dump into database.'.green
end

Instance Method Details

#call(database, _keep_dumps = nil) ⇒ Object



14
15
16
17
18
19
20
21
22
23
# File 'lib/pg_export/roles/interactive.rb', line 14

def call(database, _keep_dumps = nil)
  initialize_connection
  dumps = print_all_dumps
  dump = download_dump(select_dump(dumps))
  t = Thread.new { container[:ftp_connection].close }
  restore_downloaded_dump(dump, database)
  t.join
  puts 'Success'.green
  self
end