summaryrefslogtreecommitdiff
path: root/priv
diff options
context:
space:
mode:
authorRoger Braun <roger@rogerbraun.net>2017-07-19 18:49:25 +0200
committerRoger Braun <roger@rogerbraun.net>2017-07-19 18:49:25 +0200
commit396c32a6da5d028675b2d3c4154ac9045596ad31 (patch)
treeeacae658f60d8d1b721f7f22abb63a4780ffcf23 /priv
parent7e9647b146a6b48ed32383f8379db5bf2a22277c (diff)
downloadpleroma-396c32a6da5d028675b2d3c4154ac9045596ad31.tar.gz
pleroma-396c32a6da5d028675b2d3c4154ac9045596ad31.zip
Add follower_address to users, add on generation.
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