akkoma/priv/repo/migrations/20200907084956_remove_cron_clear_oauth_token_worker_from_oban_config.exs

20 lines
688 B
Elixir
Raw Normal View History

2020-09-07 08:54:10 +00:00
defmodule Pleroma.Repo.Migrations.RemoveCronClearOauthTokenWorkerFromObanConfig do
use Ecto.Migration
def change do
2020-09-07 10:54:28 +00:00
with %Pleroma.ConfigDB{} = config <-
2020-09-07 08:54:10 +00:00
Pleroma.ConfigDB.get_by_params(%{group: :pleroma, key: Oban}),
crontab when is_list(crontab) <- config.value[:crontab],
index when is_integer(index) <-
Enum.find_index(crontab, fn {_, worker} ->
worker == Pleroma.Workers.Cron.ClearOauthTokenWorker
end) do
updated_value = Keyword.put(config.value, :crontab, List.delete_at(crontab, index))
config
|> Ecto.Changeset.change(value: updated_value)
|> Pleroma.Repo.update()
end
end
end