Merge branch 'develop' into issue/1975
[akkoma] / lib / pleroma / config / oban.ex
1 defmodule Pleroma.Config.Oban do
2 require Logger
3
4 def warn do
5 oban_config = Pleroma.Config.get(Oban)
6
7 crontab =
8 [
9 Pleroma.Workers.Cron.StatsWorker,
10 Pleroma.Workers.Cron.PurgeExpiredActivitiesWorker,
11 Pleroma.Workers.Cron.ClearOauthTokenWorker
12 ]
13 |> Enum.reduce(oban_config[:crontab], fn removed_worker, acc ->
14 with acc when is_list(acc) <- acc,
15 setting when is_tuple(setting) <-
16 Enum.find(acc, fn {_, worker} -> worker == removed_worker end) do
17 """
18 !!!OBAN CONFIG WARNING!!!
19 You are using old workers in Oban crontab settings, which were removed.
20 Please, remove setting from crontab in your config file (prod.secret.exs): #{
21 inspect(setting)
22 }
23 """
24 |> Logger.warn()
25
26 List.delete(acc, setting)
27 else
28 _ -> acc
29 end
30 end)
31
32 Pleroma.Config.put(Oban, Keyword.put(oban_config, :crontab, crontab))
33 end
34 end