summaryrefslogtreecommitdiff
path: root/priv
diff options
context:
space:
mode:
Diffstat (limited to 'priv')
-rw-r--r--priv/repo/migrations/20170719152213_add_follower_address_to_user.exs33
1 files changed, 33 insertions, 0 deletions
diff --git a/priv/repo/migrations/20170719152213_add_follower_address_to_user.exs b/priv/repo/migrations/20170719152213_add_follower_address_to_user.exs
new file mode 100644
index 000000000..bd3c93bd5
--- /dev/null
+++ b/priv/repo/migrations/20170719152213_add_follower_address_to_user.exs
@@ -0,0 +1,33 @@
+defmodule Pleroma.Repo.Migrations.AddFollowerAddressToUser do
+ use Ecto.Migration
+ import Ecto.Query
+ import Supervisor.Spec
+ alias Pleroma.{Repo, User}
+
+ def up do
+ alter table(:users) do
+ add :follower_address, :string, unique: true
+ end
+ flush()
+
+ children = [
+ # Start the endpoint when the application starts
+ supervisor(Pleroma.Web.Endpoint, [])
+ ]
+ opts = [strategy: :one_for_one, name: Pleroma.Supervisor]
+ Supervisor.start_link(children, opts)
+
+ Enum.each(Repo.all(User), fn (user) ->
+ if !user.follower_address do
+ cs = Ecto.Changeset.change(user, %{follower_address: User.ap_followers(user)})
+ Repo.update!(cs)
+ end
+ end)
+ end
+
+ def down do
+ alter table(:users) do
+ remove :follower_address
+ end
+ end
+end