class DataKeeper::LocalStorage
Public Class Methods
new(data)
click to toggle source
# File lib/data_keeper/local_storage.rb, line 9 def initialize(data) @local_store_dir = data[:local_store_dir] @remote_access = data[:remote_access] end
Public Instance Methods
retrieve(dump_name) { |tempfile| ... }
click to toggle source
# File lib/data_keeper/local_storage.rb, line 21 def retrieve(dump_name) tempfile = Tempfile.new local_store_dir = @local_store_dir on complete_host do last_dump = capture :ls, "-1t #{File.join(local_store_dir, dump_name.to_s)} | head -n 1" download! File.join(local_store_dir, dump_name.to_s, last_dump), tempfile.path end yield(tempfile) ensure tempfile.delete end
save(file, filename, dump_name)
click to toggle source
# File lib/data_keeper/local_storage.rb, line 14 def save(file, filename, dump_name) path = dump_path(dump_name, filename) FileUtils.mkdir_p(File.dirname(path)) FileUtils.cp(file.path, path) end
Private Instance Methods
complete_host()
click to toggle source
# File lib/data_keeper/local_storage.rb, line 38 def complete_host "#{@remote_access[:user]}@#{@remote_access[:host]}:#{@remote_access[:port]}" end
dump_path(dump_name, filename)
click to toggle source
# File lib/data_keeper/local_storage.rb, line 42 def dump_path(dump_name, filename) File.join(@local_store_dir, dump_name.to_s, filename) end