lib/eco-rake/lib/files/sftp.rb in eco-rake-0.2.6 vs lib/eco-rake/lib/files/sftp.rb in eco-rake-0.2.7
- old
+ new
@@ -1,16 +1,16 @@
class EcoRake
module Lib
module Files
class Sftp < EcoRake::Lib::BaseTask
FORWARD_RULES = {
- enviro: ->(enviro) { "-#{enviro}" },
- folder: ->(folder) { "-local-folder #{folder}"},
- list: '-list',
- get_last: '-get-last',
- get: '-get',
- archive: '-archive',
+ enviro: ->(enviro) { "-#{enviro}" },
+ folder: ->(folder) { "-local-folder #{folder}"},
+ list: '-list',
+ get_last: '-get-last',
+ get: '-get',
+ archive: '-archive',
file_pattern: ->(str) { "-file-pattern-const #{str}"},
remote_subfolder: ->(sub) { "-remote-subfolder #{sub}"}
}.freeze
options_with_defaults true
@@ -36,10 +36,13 @@
private
def sftp_command
cmd = [base_command]
cmd << forward_option(:folder)
- cmd << forward_options(:list, :get_last, :get, :archive).compact.first || '-list'
+
+ forwarded = forward_options(:list, :get_last, :get, :archive).compact.first
+ cmd << (forwarded || '-list')
+
cmd.push(*forward_options(:remote_subfolder, :file_pattern))
cmd << '-no-people'
cmd = yield(cmd) if block_given?
string_cmd(*cmd)
end