dotfiles/backend/lib/prymn_web/router.ex
Nikos Papadakis 7fe45ca94b
setup CI and a more complete installation script
Use woodpecker-ci to deploy binaries to the R2 object storage. Use
multi-target builds to deploy multiple binaries for one or more CPU
architectures.

Now the installation script lives on the root of the repo, and it is
more complete checking the machine's requirements, operating system and
cpu architecture.
2023-07-19 23:01:18 +03:00

51 lines
1.4 KiB
Elixir

defmodule PrymnWeb.Router do
use PrymnWeb, :router
pipeline :browser do
plug :accepts, ["html"]
plug :fetch_session
plug :fetch_live_flash
plug :put_root_layout, html: {PrymnWeb.Layouts, :root}
plug :protect_from_forgery
plug :put_secure_browser_headers
end
pipeline :api do
plug :accepts, ["json"]
end
scope "/", PrymnWeb do
pipe_through :browser
get "/", PageController, :home
get "/install", PageController, :install
live "/servers", ServerLive.Index, :index
live "/servers/new", ServerLive.Index, :new
live "/servers/:id", ServerLive.Show
end
scope "/api/v1", PrymnWeb do
pipe_through :api
post "/servers/register", ServerController, :register
end
# Enable LiveDashboard and Swoosh mailbox preview in development
if Application.compile_env(:prymn, :dev_routes) do
# If you want to use the LiveDashboard in production, you should put
# it behind authentication and allow only admins to access it.
# If your application does not have an admins-only section yet,
# you can use Plug.BasicAuth to set up some basic authentication
# as long as you are also using SSL (which you should anyway).
import Phoenix.LiveDashboard.Router
scope "/dev" do
pipe_through :browser
live_dashboard "/dashboard", metrics: PrymnWeb.Telemetry
forward "/mailbox", Plug.Swoosh.MailboxPreview
end
end
end