summaryrefslogtreecommitdiff
path: root/lib/mix/pleroma.ex
diff options
context:
space:
mode:
authorMark Felder <feld@FreeBSD.org>2020-07-13 13:32:21 -0500
committerMark Felder <feld@FreeBSD.org>2020-07-13 13:32:21 -0500
commit80c21100db306ce45856bbdb97d3439676babeeb (patch)
treed143f523da262df5176220fbe6dc0b6370c91ebc /lib/mix/pleroma.ex
parentce85db41a30d95555bbd44d8931c4a3a357938d8 (diff)
parent5d215fd81f529b639db9096ca71d4e7f0a6ed386 (diff)
downloadpleroma-80c21100db306ce45856bbdb97d3439676babeeb.tar.gz
pleroma-80c21100db306ce45856bbdb97d3439676babeeb.zip
Merge branch 'develop' into refactor/notification_settings
Diffstat (limited to 'lib/mix/pleroma.ex')
-rw-r--r--lib/mix/pleroma.ex35
1 files changed, 34 insertions, 1 deletions
diff --git a/lib/mix/pleroma.ex b/lib/mix/pleroma.ex
index 3ad6edbfb..9f0bf6ecb 100644
--- a/lib/mix/pleroma.ex
+++ b/lib/mix/pleroma.ex
@@ -3,15 +3,48 @@
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Mix.Pleroma do
+ @apps [
+ :restarter,
+ :ecto,
+ :ecto_sql,
+ :postgrex,
+ :db_connection,
+ :cachex,
+ :flake_id,
+ :swoosh,
+ :timex
+ ]
+ @cachex_children ["object", "user"]
@doc "Common functions to be reused in mix tasks"
def start_pleroma do
+ Pleroma.Config.Holder.save_default()
Application.put_env(:phoenix, :serve_endpoints, false, persistent: true)
if Pleroma.Config.get(:env) != :test do
Application.put_env(:logger, :console, level: :debug)
end
- {:ok, _} = Application.ensure_all_started(:pleroma)
+ apps =
+ if Application.get_env(:tesla, :adapter) == Tesla.Adapter.Gun do
+ [:gun | @apps]
+ else
+ [:hackney | @apps]
+ end
+
+ Enum.each(apps, &Application.ensure_all_started/1)
+
+ children = [
+ Pleroma.Repo,
+ {Pleroma.Config.TransferTask, false},
+ Pleroma.Web.Endpoint
+ ]
+
+ cachex_children = Enum.map(@cachex_children, &Pleroma.Application.build_cachex(&1, []))
+
+ Supervisor.start_link(children ++ cachex_children,
+ strategy: :one_for_one,
+ name: Pleroma.Supervisor
+ )
if Pleroma.Config.get(:env) not in [:test, :benchmark] do
pleroma_rebooted?()