Application: Save postgres version in the environment

This commit is contained in:
lain 2020-11-20 16:26:22 +01:00
parent 5e04f4156c
commit a407e33c78

View File

@ -109,7 +109,28 @@ defmodule Pleroma.Application do
# See http://elixir-lang.org/docs/stable/elixir/Supervisor.html # See http://elixir-lang.org/docs/stable/elixir/Supervisor.html
# for other strategies and supported options # for other strategies and supported options
opts = [strategy: :one_for_one, name: Pleroma.Supervisor] opts = [strategy: :one_for_one, name: Pleroma.Supervisor]
Supervisor.start_link(children, opts) result = Supervisor.start_link(children, opts)
set_postgres_server_version()
result
end
defp set_postgres_server_version() do
version =
with %{rows: [[version]]} <- Ecto.Adapters.SQL.query!(Pleroma.Repo, "show server_version"),
{num, _} <- Float.parse(version) do
num
else
e ->
Logger.warn(
"Could not get the postgres version: #{inspect(e)}.\nSetting the default value of 9.6"
)
9.6
end
Application.put_env(:postgres, :version, version)
end end
def load_custom_modules do def load_custom_modules do