parent
934a306b8a
commit
3d2b32cebf
@ -1,32 +0,0 @@
|
|||||||
require 'net/sftp'
|
|
||||||
require 'uri'
|
|
||||||
|
|
||||||
module Sftp
|
|
||||||
class RaceLoader
|
|
||||||
def self.load_data(path: '/data/survey_responses/')
|
|
||||||
SurveyItemResponse.update_all(student_id: nil)
|
|
||||||
StudentRace.delete_all
|
|
||||||
Student.delete_all
|
|
||||||
|
|
||||||
sftptogo_url = ENV['SFTPTOGO_URL']
|
|
||||||
uri = URI.parse(sftptogo_url)
|
|
||||||
Net::SFTP.start(uri.host, uri.user, password: uri.password) do |sftp|
|
|
||||||
sftp.dir.foreach(path) do |entry|
|
|
||||||
filename = entry.name
|
|
||||||
puts filename
|
|
||||||
|
|
||||||
sftp.file.open(filepath(path:, filename:), 'r') do |f|
|
|
||||||
StudentLoader.from_file(file: f, rules: [])
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.filepath(path:, filename:)
|
|
||||||
path += '/' unless path.end_with?('/')
|
|
||||||
"#{path}#{filename}"
|
|
||||||
end
|
|
||||||
|
|
||||||
private_class_method :filepath
|
|
||||||
end
|
|
||||||
end
|
|
||||||
Loading…
Reference in new issue