diff options
Diffstat (limited to 'priv/repo/migrations')
| -rw-r--r-- | priv/repo/migrations/20191220174645_add_scopes_to_pleroma_feo_auth_records.exs | 17 | 
1 files changed, 17 insertions, 0 deletions
diff --git a/priv/repo/migrations/20191220174645_add_scopes_to_pleroma_feo_auth_records.exs b/priv/repo/migrations/20191220174645_add_scopes_to_pleroma_feo_auth_records.exs new file mode 100644 index 000000000..6b160ad16 --- /dev/null +++ b/priv/repo/migrations/20191220174645_add_scopes_to_pleroma_feo_auth_records.exs @@ -0,0 +1,17 @@ +defmodule Pleroma.Repo.Migrations.AddScopesToPleromaFEOAuthRecords do +  use Ecto.Migration + +  def up do +    update_scopes_clause = "SET scopes = '{read,write,follow,push,admin}'" +    apps_where = "WHERE apps.client_name like 'PleromaFE_%' or apps.client_name like 'AdminFE_%'" +    app_id_subquery_where = "WHERE app_id IN (SELECT apps.id FROM apps #{apps_where})" + +    execute("UPDATE apps #{update_scopes_clause} #{apps_where}") + +    for table <- ["oauth_authorizations", "oauth_tokens"] do +      execute("UPDATE #{table} #{update_scopes_clause} #{app_id_subquery_where}") +    end +  end + +  def down, do: :noop +end  | 
