forked from AkkomaGang/akkoma
Add migration
This commit is contained in:
parent
060adfd762
commit
0be9cb086b
1 changed files with 52 additions and 0 deletions
|
@ -0,0 +1,52 @@
|
||||||
|
defmodule Pleroma.Repo.Migrations.AddDefaultsToAllTables do
|
||||||
|
use Ecto.Migration
|
||||||
|
|
||||||
|
def up do
|
||||||
|
execute("ALTER TABLE activities
|
||||||
|
ALTER COLUMN recipients SET DEFAULT ARRAY[]::character varying[]")
|
||||||
|
|
||||||
|
execute("ALTER TABLE filters
|
||||||
|
ALTER COLUMN whole_word SET DEFAULT true")
|
||||||
|
|
||||||
|
execute("ALTER TABLE push_subscriptions
|
||||||
|
ALTER COLUMN data SET DEFAULT '{}'::jsonb")
|
||||||
|
|
||||||
|
execute(~s(ALTER TABLE users
|
||||||
|
ALTER COLUMN following SET DEFAULT ARRAY[]::character varying[],
|
||||||
|
ALTER COLUMN tags SET DEFAULT ARRAY[]::character varying[],
|
||||||
|
ALTER COLUMN notification_settings SET DEFAULT
|
||||||
|
'{"followers": true, "follows": true, "non_follows": true, "non_followers": true}'::jsonb))
|
||||||
|
|
||||||
|
# irreversible updates
|
||||||
|
|
||||||
|
execute(
|
||||||
|
"UPDATE activities SET recipients = ARRAY[]::character varying[] WHERE recipients IS NULL"
|
||||||
|
)
|
||||||
|
|
||||||
|
execute("UPDATE filters SET whole_word = true WHERE whole_word IS NULL")
|
||||||
|
|
||||||
|
execute("UPDATE push_subscriptions SET data = '{}'::jsonb WHERE data IS NULL")
|
||||||
|
|
||||||
|
execute("UPDATE users SET following = ARRAY[]::character varying[] WHERE following IS NULL")
|
||||||
|
execute("UPDATE users SET tags = ARRAY[]::character varying[] WHERE tags IS NULL")
|
||||||
|
execute(~s(UPDATE users SET notification_settings =
|
||||||
|
'{"followers": true, "follows": true, "non_follows": true, "non_followers": true}'::jsonb
|
||||||
|
WHERE notification_settings = '{}'::jsonb))
|
||||||
|
end
|
||||||
|
|
||||||
|
def down do
|
||||||
|
execute("ALTER TABLE activities
|
||||||
|
ALTER COLUMN recipients DROP DEFAULT")
|
||||||
|
|
||||||
|
execute("ALTER TABLE filters
|
||||||
|
ALTER COLUMN whole_word DROP DEFAULT")
|
||||||
|
|
||||||
|
execute("ALTER TABLE push_subscriptions
|
||||||
|
ALTER COLUMN data DROP DEFAULT")
|
||||||
|
|
||||||
|
execute("ALTER TABLE users
|
||||||
|
ALTER COLUMN following DROP DEFAULT,
|
||||||
|
ALTER COLUMN tags DROP DEFAULT,
|
||||||
|
ALTER COLUMN notification_settings SET DEFAULT '{}'::jsonb")
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in a new issue