hiding raise error logic to otp_version module
This commit is contained in:
parent
28ed4b41d0
commit
24d1ac125c
2 changed files with 24 additions and 19 deletions
|
@ -42,6 +42,10 @@ def start(_type, _args) do
|
|||
setup_instrumenters()
|
||||
load_custom_modules()
|
||||
|
||||
if adapter() == Tesla.Adapter.Gun do
|
||||
Pleroma.OTPVersion.check!()
|
||||
end
|
||||
|
||||
# Define workers and child supervisors to be supervised
|
||||
children =
|
||||
[
|
||||
|
@ -66,25 +70,6 @@ def start(_type, _args) do
|
|||
Pleroma.Gopher.Server
|
||||
]
|
||||
|
||||
if adapter() == Tesla.Adapter.Gun do
|
||||
case Pleroma.OTPVersion.check() do
|
||||
:ok ->
|
||||
:ok
|
||||
|
||||
{:error, version} ->
|
||||
raise "
|
||||
!!!OTP VERSION WARNING!!!
|
||||
You are using gun adapter with OTP version #{version}, which doesn't support correct handling of unordered certificates chains.
|
||||
"
|
||||
|
||||
:undefined ->
|
||||
raise "
|
||||
!!!OTP VERSION WARNING!!!
|
||||
To support correct handling of unordered certificates chains - OTP version must be > 22.2.
|
||||
"
|
||||
end
|
||||
end
|
||||
|
||||
# See http://elixir-lang.org/docs/stable/elixir/Supervisor.html
|
||||
# for other strategies and supported options
|
||||
opts = [strategy: :one_for_one, name: Pleroma.Supervisor]
|
||||
|
|
|
@ -5,6 +5,26 @@
|
|||
defmodule Pleroma.OTPVersion do
|
||||
@type check_status() :: :ok | :undefined | {:error, String.t()}
|
||||
|
||||
@spec check!() :: :ok | no_return()
|
||||
def check! do
|
||||
case check() do
|
||||
:ok ->
|
||||
:ok
|
||||
|
||||
{:error, version} ->
|
||||
raise "
|
||||
!!!OTP VERSION WARNING!!!
|
||||
You are using gun adapter with OTP version #{version}, which doesn't support correct handling of unordered certificates chains.
|
||||
"
|
||||
|
||||
:undefined ->
|
||||
raise "
|
||||
!!!OTP VERSION WARNING!!!
|
||||
To support correct handling of unordered certificates chains - OTP version must be > 22.2.
|
||||
"
|
||||
end
|
||||
end
|
||||
|
||||
@spec check() :: check_status()
|
||||
def check do
|
||||
# OTP Version https://erlang.org/doc/system_principles/versions.html#otp-version
|
||||
|
|
Loading…
Reference in a new issue