Document mix tasks
[akkoma] / lib / mix / tasks / register_user.ex
1 defmodule Mix.Tasks.RegisterUser do
2 @moduledoc """
3 Manually register a local user
4
5 Usage: ``mix register_user <name> <nickname> <email> <bio> <password>``
6
7 Example: ``mix register_user 仮面の告白 lain lain@example.org "blushy-crushy fediverse idol + pleroma dev" pleaseDontHeckLain``
8 """
9
10 use Mix.Task
11 alias Pleroma.{Repo, User}
12
13 @shortdoc "Register user"
14 def run([name, nickname, email, bio, password]) do
15 Mix.Task.run("app.start")
16
17 params = %{
18 name: name,
19 nickname: nickname,
20 email: email,
21 password: password,
22 password_confirmation: password,
23 bio: bio
24 }
25
26 user = User.register_changeset(%User{}, params)
27
28 Repo.insert!(user)
29 end
30 end