Merge branch 'stable' into stable-sync/2.1.2
[akkoma] / priv / repo / migrations / 20200907084956_remove_cron_clear_oauth_token_worker_from_oban_config.exs
1 defmodule Pleroma.Repo.Migrations.RemoveCronClearOauthTokenWorkerFromObanConfig do
2 use Ecto.Migration
3
4 def change do
5 with %Pleroma.ConfigDB{} = config <-
6 Pleroma.ConfigDB.get_by_params(%{group: :pleroma, key: Oban}),
7 crontab when is_list(crontab) <- config.value[:crontab],
8 index when is_integer(index) <-
9 Enum.find_index(crontab, fn {_, worker} ->
10 worker == Pleroma.Workers.Cron.ClearOauthTokenWorker
11 end) do
12 updated_value = Keyword.put(config.value, :crontab, List.delete_at(crontab, index))
13
14 config
15 |> Ecto.Changeset.change(value: updated_value)
16 |> Pleroma.Repo.update()
17 end
18 end
19 end