don't migrate configurable_from_database setting
[akkoma] / lib / mix / tasks / pleroma / config.ex
index bb126463c790b0a88967c222daa07bcd70a2c0b6..e7c6e8810c24d288d4e97290d4dc02bbcd320bfb 100644 (file)
@@ -30,7 +30,7 @@ defmodule Mix.Tasks.Pleroma.Config do
   def run(["migrate_to_db"]) do
     start_pleroma()
 
-    if Pleroma.Config.get([:instance, :dynamic_configuration]) do
+    if Pleroma.Config.get([:configurable_from_database]) do
       Enum.each(@groups, &load_and_create(&1))
     else
       Mix.shell().info(
@@ -48,7 +48,8 @@ defmodule Mix.Tasks.Pleroma.Config do
         aliases: [d: :delete_from_db]
       )
 
-    with {:active?, true} <- {:active?, Pleroma.Config.get([:instance, :dynamic_configuration])},
+    with {:active?, true} <-
+           {:active?, Pleroma.Config.get([:configurable_from_database])},
          env_path when is_binary(env_path) <- opts[:env],
          config_path <- "config/#{env_path}.exported_from_db.secret.exs",
          {:ok, file} <- File.open(config_path, [:write, :utf8]) do
@@ -74,12 +75,15 @@ defmodule Mix.Tasks.Pleroma.Config do
   defp load_and_create(group) do
     group
     |> Application.get_all_env()
-    |> Enum.reject(fn {k, _v} -> k in [Pleroma.Repo, :env] end)
+    |> Enum.reject(fn {k, _v} ->
+      k in [Pleroma.Repo, :env, :configurable_from_database] or
+        (group == :phoenix and k == :serve_endpoints)
+    end)
     |> Enum.each(fn {key, value} ->
-      key_str = inspect(key)
+      key = inspect(key)
+      {:ok, _} = Config.update_or_create(%{group: inspect(group), key: key, value: value})
 
-      {:ok, _} = Config.update_or_create(%{group: ":#{group}", key: key_str, value: value})
-      Mix.shell().info("settings for key #{key_str} migrated.")
+      Mix.shell().info("settings for key #{key} migrated.")
     end)
 
     Mix.shell().info("settings for group :#{group} migrated.")