class Bricolage::S3Task::Put
Public Class Methods
new(src, dest)
click to toggle source
# File lib/bricolage/s3datasource.rb, line 149 def initialize(src, dest) @src = src @dest = dest end
Public Instance Methods
check_arguments()
click to toggle source
# File lib/bricolage/s3datasource.rb, line 173 def check_arguments end
command_line(src, dest)
click to toggle source
# File lib/bricolage/s3datasource.rb, line 169 def command_line(src, dest) "aws s3 cp #{src} #{ds.url(dest)}" end
each_src_dest() { |src, dest| ... }
click to toggle source
# File lib/bricolage/s3datasource.rb, line 162 def each_src_dest source_files.each do |src| dest = (@dest.to_s.end_with?('/') ? "#{@dest}/#{File.basename(src)}" : @dest) yield src, dest end end
run()
click to toggle source
# File lib/bricolage/s3datasource.rb, line 184 def run raise JobFailure, "no such file: #{@src}" if source_files.empty? each_src_dest do |src, dest| ds.logger.info command_line(src, dest) ds.object(dest).upload_file(src) end nil end
single_source?()
click to toggle source
# File lib/bricolage/s3datasource.rb, line 158 def single_source? source_files.size == 1 and source_files.first == @src end
source()
click to toggle source
# File lib/bricolage/s3datasource.rb, line 176 def source buf = StringIO.new each_src_dest do |src, dest| buf.puts command_line(src, dest) end buf.string end
source_files()
click to toggle source
# File lib/bricolage/s3datasource.rb, line 154 def source_files @source_files ||= Dir.glob(@src) end