defmodule Mix.Tasks.CreateFreeSubscription do @moduledoc false use Mix.Task use Plausible.Repo alias Plausible.Billing.Subscription # coveralls-ignore-start def run([user_id]) do Application.ensure_all_started(:plausible) execute(user_id) end def run(_), do: IO.puts("Usage - mix create_free_subscription ") def execute(user_id) do user = Repo.get(Plausible.Auth.User, user_id) {:ok, team} = Plausible.Teams.get_or_create(user) team |> Subscription.free() |> Repo.insert!() IO.puts("Created a free subscription for user: #{user.name}") end end