defmodule EzcontainerRailwayWeb.ContainerCreateLive do alias EzcontainerRailway.Railway alias Phoenix.Component use Phoenix.LiveView use EzcontainerRailwayWeb, :live_view def render(assigns) do ~H"""
<%= if @target == "container" do %> <.form for={@form} phx-submit="create_container">
<% end %> <%= if @target == "repo" do %> <.form for={@form} phx-submit="create_container">
<% end %>
""" end def mount(_params, session, socket) do form = Component.to_form(%{"name" => "", "tag" => ""}) {:ok, socket |> assign(form: form, target: "container", session: session)} end def handle_event("create_container", data, socket) do {:ok, resp} = Railway.create_service( data["name"], "image", socket.assigns.session["railway_token"] ) {:noreply, socket |> put_flash(:info, "container deplying") |> push_redirect(to: "/containers")} end end