From 0ab2e5ba2b0631b28b5b1405559237b3913c878f Mon Sep 17 00:00:00 2001 From: Dawid Rycerz Date: Sun, 23 Mar 2025 17:11:39 +0100 Subject: feat: initialize Phoenix application for weather alerts This commit sets up the initial Silmataivas project structure, including: Phoenix web framework configuration, database models for users and locations, weather polling service, notification system, Docker and deployment configurations, CI/CD pipeline setup --- lib/silmataivas/application.ex | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 lib/silmataivas/application.ex (limited to 'lib/silmataivas/application.ex') diff --git a/lib/silmataivas/application.ex b/lib/silmataivas/application.ex new file mode 100644 index 0000000..269f48f --- /dev/null +++ b/lib/silmataivas/application.ex @@ -0,0 +1,37 @@ +defmodule Silmataivas.Application do + # See https://hexdocs.pm/elixir/Application.html + # for more information on OTP Applications + @moduledoc false + + use Application + + @impl true + def start(_type, _args) do + children = [ + SilmataivasWeb.Telemetry, + Silmataivas.Repo, + {DNSCluster, query: Application.get_env(:silmataivas, :dns_cluster_query, :ignore)}, + {Phoenix.PubSub, name: Silmataivas.PubSub}, + # Start the Finch HTTP client for sending emails + {Finch, name: Silmataivas.Finch}, + # Start a worker by calling: Silmataivas.Worker.start_link(arg) + # {Silmataivas.Worker, arg}, + # Start to serve requests, typically the last entry + SilmataivasWeb.Endpoint, + Silmataivas.Scheduler + ] + + # See https://hexdocs.pm/elixir/Supervisor.html + # for other strategies and supported options + opts = [strategy: :one_for_one, name: Silmataivas.Supervisor] + Supervisor.start_link(children, opts) + end + + # Tell Phoenix to update the endpoint configuration + # whenever the application is updated. + @impl true + def config_change(changed, _new, removed) do + SilmataivasWeb.Endpoint.config_change(changed, removed) + :ok + end +end -- cgit v1.2.3