A lib/mix/tasks/triglav/poi_update.ex => lib/mix/tasks/triglav/poi_update.ex +17 -0
@@ 0,0 1,17 @@
+defmodule Mix.Tasks.Triglav.PoiUpdate do
+ use Mix.Task
+
+ require Logger
+
+ @shortdoc "Update all POI data from sources"
+
+ @impl Mix.Task
+ def run(_args) do
+ Application.put_env(:triglav, :repo_only, true)
+ Mix.Task.run("app.start")
+ Logger.info("Updating POI...")
+ {time, _} = :timer.tc(fn -> Triglav.Poi.update_all() end)
+ time_seconds = :erlang.float_to_binary(time / 1_000_000, decimals: 2)
+ Logger.info("Done. Took #{time_seconds} seconds.")
+ end
+end
M lib/triglav/release.ex => lib/triglav/release.ex +5 -0
@@ 39,6 39,11 @@ defmodule Triglav.Release do
Mix.Tasks.Triglav.PtRegenerate.run([])
end
+ def poi_update do
+ load_app()
+ Triglav.Poi.update_all()
+ end
+
defp repos do
Application.fetch_env!(@app, :ecto_repos)
end