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