diff options
author | feld <feld@feld.me> | 2024-07-30 15:23:28 +0000 |
---|---|---|
committer | feld <feld@feld.me> | 2024-07-30 15:23:28 +0000 |
commit | 18469f3b1da6a103df5122b579b58afad64b1e4d (patch) | |
tree | c01185a23f0a52398889b8a5fe7a0a664630cd6a /priv | |
parent | 4e24445b509df710ffae277796221352977c3f25 (diff) | |
parent | 1bce582f0de896b2a84cc2ef44f82646276dc255 (diff) | |
download | pleroma-18469f3b1da6a103df5122b579b58afad64b1e4d.tar.gz pleroma-18469f3b1da6a103df5122b579b58afad64b1e4d.zip |
Merge branch 'oban/simpler-publish' into 'develop'
Publisher job simplification
See merge request pleroma/pleroma!4194
Diffstat (limited to 'priv')
-rw-r--r-- | priv/repo/migrations/20240729163838_publisher_job_change.exs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/priv/repo/migrations/20240729163838_publisher_job_change.exs b/priv/repo/migrations/20240729163838_publisher_job_change.exs new file mode 100644 index 000000000..3449e3b3b --- /dev/null +++ b/priv/repo/migrations/20240729163838_publisher_job_change.exs @@ -0,0 +1,27 @@ +defmodule Pleroma.Repo.Migrations.PublisherJobChange do + use Ecto.Migration + + alias Pleroma.Activity + alias Pleroma.Repo + import Ecto.Query + + def up do + query = + from(j in Oban.Job, + where: j.worker == "Pleroma.Workers.PublisherWorker", + where: j.state in ["available", "retryable"] + ) + + jobs = Repo.all(query) + + Enum.each(jobs, fn job -> + args = job.args + activity = Activity.get_by_ap_id(args["id"]) + + updated_args = Map.put(args, "activity_id", activity.id) + + Pleroma.Workers.PublisherWorker.new(updated_args) + |> Oban.insert() + end) + end +end |