Skip uploading images for users that have a new style avatar
authorTom Hughes <tom@compton.nu>
Mon, 15 Jul 2019 18:17:01 +0000 (19:17 +0100)
committerTom Hughes <tom@compton.nu>
Mon, 15 Jul 2019 18:17:01 +0000 (19:17 +0100)
lib/tasks/upgrade_avatars.rake

index 03939da..3316f7e 100644 (file)
@@ -1,15 +1,17 @@
 namespace "storage" do
   task :upgrade_avatars => :environment do
     User.active.where.not(:image_file_name => nil).in_batches.each_record do |user|
-      io = File.open(user.image.path)
-      filename = user.image.original_filename
-      content_type = if user.image.content_type.nil?
-                       MimeMagic.by_magic(io)&.type
-                     else
-                       user.image.content_type
-                     end
+      unless user.avatar.attached?
+        io = File.open(user.image.path)
+        filename = user.image.original_filename
+        content_type = if user.image.content_type.nil?
+                         MimeMagic.by_magic(io)&.type
+                       else
+                         user.image.content_type
+                       end
 
-      user.avatar.attach(:io => io, :filename => filename, :content_type => content_type)
+        user.avatar.attach(:io => io, :filename => filename, :content_type => content_type)
+      end
     end
   end
 end