# Pleroma: A lightweight social networking server # Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/> # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Config.Oban do require Logger def warn do oban_config = Pleroma.Config.get(Oban) crontab = [ Pleroma.Workers.Cron.StatsWorker, Pleroma.Workers.Cron.PurgeExpiredActivitiesWorker, Pleroma.Workers.Cron.ClearOauthTokenWorker ] |> Enum.reduce(oban_config[:crontab], fn removed_worker, acc -> with acc when is_list(acc) <- acc, setting when is_tuple(setting) <- Enum.find(acc, fn {_, worker} -> worker == removed_worker end) do """ !!!OBAN CONFIG WARNING!!! You are using old workers in Oban crontab settings, which were removed. Please, remove setting from crontab in your config file (prod.secret.exs): #{ inspect(setting) } """ |> Logger.warn() List.delete(acc, setting) else _ -> acc end end) Pleroma.Config.put(Oban, Keyword.put(oban_config, :crontab, crontab)) end end