Merge branch 'fix/mix-task-caching' into 'develop'
[akkoma] / lib / mix / tasks / fix_ap_users.ex
index 09a2c0424704ffc3771abc840a6465dad6856520..7e970850e12ac115fe684032eb168c1b04690667 100644 (file)
@@ -1,6 +1,5 @@
 defmodule Mix.Tasks.FixApUsers do
   use Mix.Task
-  import Mix.Ecto
   import Ecto.Query
   alias Pleroma.{Repo, User}
 
@@ -8,13 +7,22 @@ defmodule Mix.Tasks.FixApUsers do
   def run([]) do
     Mix.Task.run("app.start")
 
-    q = from u in User,
-      where: fragment("? @> ?", u.info, ^%{"ap_enabled" => true})
+    q =
+      from(
+        u in User,
+        where: fragment("? @> ?", u.info, ^%{"ap_enabled" => true}),
+        where: u.local == false
+      )
+
     users = Repo.all(q)
 
-    Enum.each(users, fn(user) ->
-      IO.puts("Fetching #{user.nickname}")
-      Pleroma.Web.ActivityPub.Transmogrifier.upgrade_user_from_ap_id(user.ap_id)
+    Enum.each(users, fn user ->
+      try do
+        IO.puts("Fetching #{user.nickname}")
+        Pleroma.Web.ActivityPub.Transmogrifier.upgrade_user_from_ap_id(user.ap_id, false)
+      rescue
+        e -> IO.inspect(e)
+      end
     end)
   end
 end