ha-handler/lib/ha_handler/application.ex
Timothée Floure abcd3337dd
All checks were successful
continuous-integration/drone/push Build is passing
Add minimal handler clustering logic
2022-05-22 14:30:44 +02:00

26 lines
799 B
Elixir

defmodule HAHandler.Application do
# See https://hexdocs.pm/elixir/Application.html
# for more information on OTP Applications
@moduledoc false
use Application
alias HAHandler
@impl true
def start(_type, _args) do
children = [
{Plug.Cowboy,
scheme: :http, plug: HAHandler.Web.Router, options: [port: HAHandler.http_port()]},
{HAHandler.PGSQL.Supervisor, HAHandler.pgsql_instances()},
{HAHandler.DRBD.Supervisor, HAHandler.drbd_instances()},
{HAHandler.Cluster, HAHandler.handler_instances()},
{HAHandler.Control, []}
]
# See https://hexdocs.pm/elixir/Supervisor.html
# for other strategies and supported options
opts = [strategy: :one_for_one, name: HAHandler.Supervisor]
Supervisor.start_link(children, opts)
end
end