寻找下载数据文件,从数据创建txt文件并将其发送到AWS S3的最佳方法吗?

时间:2019-11-25 00:16:57

标签: ruby-on-rails amazon-web-services amazon-s3 sftp

标题对此进行了说明,但是我正在使用Net :: SFTP登录并从安全FTP获取2个数据文件。然后,我想根据下载的数据创建一个文件,除非该文件尚未创建,而我只需要跳过File.open并发送到AWS s3?

这是到目前为止的代码。我是初级的Rails开发人员,而且尚未重构。它也不是很有效。我已经为Amazon :: AWS :: s3做好了准备,但是需要发送方法。


class MissouriJob < ApplicationJob
  queue_as :default

  def perform(*args)
    # Do something later
  end


  def entries(sftp)
    downloads = []
    date_time = Time.new.inspect
    entries = sftp.dir.entries('/Distribution/dor/modlpool_daily/')
    entries.each_with_index do |entry, index| 
      # File.open("public/missouri_data/#{entry.name}_#{date_time}.txt", "w")
      downloads << sftp.download!("/Distribution/dor/modlpool_daily/#{entry.name}")
      file = File.open("#{entry.name}_#{date_time}", "w+") { |f| f.write("#{downloads[index]}") }
      byebug 
    end 
  end

  def logon 
    sftp = Net::SFTP.start('moftp.mo.gov', Rails.application.credentials[:missouri_username], password: Rails.application.credentials[:missouri_password] )
    entries(sftp)
  end

end

0 个答案:

没有答案