diff options
Diffstat (limited to 'priv/repo/migrations')
| -rw-r--r-- | priv/repo/migrations/20200722185515_fix_malformed_formatter_config.exs | 26 | 
1 files changed, 26 insertions, 0 deletions
| diff --git a/priv/repo/migrations/20200722185515_fix_malformed_formatter_config.exs b/priv/repo/migrations/20200722185515_fix_malformed_formatter_config.exs new file mode 100644 index 000000000..77b760825 --- /dev/null +++ b/priv/repo/migrations/20200722185515_fix_malformed_formatter_config.exs @@ -0,0 +1,26 @@ +defmodule Pleroma.Repo.Migrations.FixMalformedFormatterConfig do +  use Ecto.Migration +  alias Pleroma.ConfigDB + +  @config_path %{group: :pleroma, key: Pleroma.Formatter} + +  def change do +    with %ConfigDB{value: %{} = opts} <- ConfigDB.get_by_params(@config_path), +         fixed_opts <- Map.to_list(opts) do +      fix_config(fixed_opts) +    else +      _ -> :skipped +    end +  end + +  defp fix_config(fixed_opts) when is_list(fixed_opts) do +    {:ok, _} = +      ConfigDB.update_or_create(%{ +        group: :pleroma, +        key: Pleroma.Formatter, +        value: fixed_opts +      }) + +    :ok +  end +end | 
