logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma git clone https://hacktivis.me/git/pleroma.git
commit: 17877f612e6c655290c5dc8bdb82f4b34e8b5b9f
parent 4bb57d4f25bcdc90a63163ba175b6171c9ddbc33
Author: Mark Felder <feld@feld.me>
Date:   Sat, 20 Jan 2024 18:51:20 -0500

Use config to control streamer registry

Diffstat:

Mconfig/benchmark.exs3++-
Mconfig/config.exs3++-
Mconfig/test.exs3++-
Mlib/pleroma/application.ex26++++++++++++++------------
4 files changed, 20 insertions(+), 15 deletions(-)

diff --git a/config/benchmark.exs b/config/benchmark.exs @@ -80,7 +80,8 @@ IO.puts("RUM enabled: #{rum_enabled}") config :pleroma, Pleroma.ReverseProxy.Client, Pleroma.ReverseProxy.ClientMock config :pleroma, Pleroma.Application, - background_migrators: false + background_migrators: false, + streamer_registry: false if File.exists?("./config/benchmark.secret.exs") do import_config "benchmark.secret.exs" diff --git a/config/config.exs b/config/config.exs @@ -908,7 +908,8 @@ config :pleroma, Pleroma.Application, background_migrators: true, internal_fetch: true, load_custom_modules: true, - max_restarts: 3 + max_restarts: 3, + streamer_registry: true # Import environment specific config. This must remain at the bottom # of this file so it overrides the configuration defined above. diff --git a/config/test.exs b/config/test.exs @@ -166,7 +166,8 @@ config :pleroma, Pleroma.Application, background_migrators: false, internal_fetch: false, load_custom_modules: false, - max_restarts: 100 + max_restarts: 100, + streamer_registry: false if File.exists?("./config/test.secret.exs") do import_config "test.secret.exs" diff --git a/lib/pleroma/application.ex b/lib/pleroma/application.ex @@ -107,7 +107,7 @@ defmodule Pleroma.Application do Pleroma.Web.Endpoint ] ++ task_children() ++ - dont_run_in_test(@mix_env) ++ + streamer_registry() ++ background_migrators() ++ shout_child(shout_enabled?()) ++ [Pleroma.Gopher.Server] @@ -209,17 +209,19 @@ defmodule Pleroma.Application do defp shout_enabled?, do: Config.get([:shout, :enabled]) - defp dont_run_in_test(env) when env in [:test, :benchmark], do: [] - - defp dont_run_in_test(_) do - [ - {Registry, - [ - name: Pleroma.Web.Streamer.registry(), - keys: :duplicate, - partitions: System.schedulers_online() - ]} - ] + defp streamer_registry() do + if Application.get_env(:pleroma, __MODULE__)[:streamer_registry] do + [ + {Registry, + [ + name: Pleroma.Web.Streamer.registry(), + keys: :duplicate, + partitions: System.schedulers_online() + ]} + ] + else + [] + end end defp background_migrators do