4692c61c8f978dd77a0274a1b55f5e9fae255c82
[anni] / priv / repo / migrations / 20191026191603_set_not_null_for_push_subscriptions.exs
1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
4
5 defmodule Pleroma.Repo.Migrations.SetNotNullForPushSubscriptions do
6   use Ecto.Migration
7
8   # modify/3 function will require index recreation, so using execute/1 instead
9
10   def up do
11     execute("ALTER TABLE push_subscriptions
12     ALTER COLUMN user_id SET NOT NULL,
13     ALTER COLUMN token_id SET NOT NULL,
14     ALTER COLUMN endpoint SET NOT NULL,
15     ALTER COLUMN key_p256dh SET NOT NULL,
16     ALTER COLUMN key_auth SET NOT NULL,
17     ALTER COLUMN data SET NOT NULL")
18   end
19
20   def down do
21     execute("ALTER TABLE push_subscriptions
22     ALTER COLUMN user_id DROP NOT NULL,
23     ALTER COLUMN token_id DROP NOT NULL,
24     ALTER COLUMN endpoint DROP NOT NULL,
25     ALTER COLUMN key_p256dh DROP NOT NULL,
26     ALTER COLUMN key_auth DROP NOT NULL,
27     ALTER COLUMN data DROP NOT NULL")
28   end
29 end