Browse Source

Partition log files per org

pull/1829/head
Kat 3 years ago
parent
commit
55a66d7e18
  1. 17
      lib/tasks/full_import.rake
  2. 6
      spec/lib/tasks/full_import_spec.rb

17
lib/tasks/full_import.rake

@ -27,19 +27,21 @@ namespace :import do
archive_path = row[1]
archive_io = s3_service.get_file_io(archive_path)
archive_service = Storage::ArchiveService.new(archive_io)
Rails.logger.info("Performing initial imports for organisation #{row[0]}")
logger.info("Performing initial imports for organisation #{row[0]}")
initial_import_list.each do |step|
if archive_service.folder_present?(step.folder)
step.import_class.new(archive_service).send(step.import_method, step.folder, step.logger)
end
end
log_file = "#{File.basename(institutions_csv_name, File.extname(institutions_csv_name))}_#{File.basename(archive_path, File.extname(archive_path))}_initial.log"
s3_service.write_file(log_file, logs_string.string)
logs_string.rewind
logs_string.truncate(0)
end
logger.info("Finished initial imports")
log_file = "#{File.basename(institutions_csv_name, File.extname(institutions_csv_name))}_initial.log"
s3_service.write_file(log_file, logs_string.string)
end
desc "Run logs import steps"
@ -73,11 +75,14 @@ namespace :import do
step.import_class.new(archive_service).send(step.import_method, step.folder, step.logger)
end
end
log_file = "#{File.basename(institutions_csv_name, File.extname(institutions_csv_name))}_#{File.basename(archive_path, File.extname(archive_path))}_logs.log"
s3_service.write_file(log_file, logs_string.string)
logs_string.rewind
logs_string.truncate(0)
end
logger.info("Log import complete")
log_file = "#{File.basename(institutions_csv_name, File.extname(institutions_csv_name))}_logs.log"
s3_service.write_file(log_file, logs_string.string)
end
desc "Trigger invite emails for imported users"

6
spec/lib/tasks/full_import_spec.rb

@ -67,7 +67,8 @@ describe "full import", type: :task do
it "creates a report using given organisation csv" do
expect(Storage::S3Service).to receive(:new).with(paas_config_service, instance_name)
expect(storage_service).to receive(:write_file).with("some_name_initial.log", / INFO -- : Beginning initial imports for 2 organisations/)
expect(storage_service).to receive(:write_file).with("some_name_1_initial.log", / INFO -- : Performing initial imports for organisation org1/)
expect(storage_service).to receive(:write_file).with("some_name_2_initial.log", / INFO -- : Performing initial imports for organisation org2/)
task.invoke("some_name.csv")
end
@ -95,7 +96,8 @@ describe "full import", type: :task do
it "creates a report using given organisation csv" do
expect(Storage::S3Service).to receive(:new).with(paas_config_service, instance_name)
expect(storage_service).to receive(:write_file).with("some_name_logs.log", / INFO -- : Beginning log imports for 2 organisations/)
expect(storage_service).to receive(:write_file).with("some_name_1_logs.log", / INFO -- : Importing logs for organisation org1, expecting 0 logs/)
expect(storage_service).to receive(:write_file).with("some_name_2_logs.log", / INFO -- : Importing logs for organisation org2, expecting 0 logs/)
task.invoke("some_name.csv")
end

Loading…
Cancel
Save