defmodule Mix.Tasks.Dexi.Admin do use Mix.Task @shortdoc "Creates or removes an administrator" @impl Mix.Task def run(arguments) do Mix.Task.run("app.start") with {:ok, operation, pubkey} <- Dexi.CLI.Arguments.parse_admin(arguments), {:ok, message} <- Dexi.Accounts.AdminCommand.run(operation, pubkey) do Mix.shell().info(message) else {:error, message} -> Mix.raise(message) end end end