diff options
Diffstat (limited to 'priv/repo/migrations')
| -rw-r--r-- | priv/repo/migrations/20220308012601_create_announcements.exs | 26 | 
1 files changed, 26 insertions, 0 deletions
diff --git a/priv/repo/migrations/20220308012601_create_announcements.exs b/priv/repo/migrations/20220308012601_create_announcements.exs new file mode 100644 index 000000000..01c9ce041 --- /dev/null +++ b/priv/repo/migrations/20220308012601_create_announcements.exs @@ -0,0 +1,26 @@ +defmodule Pleroma.Repo.Migrations.CreateAnnouncements do +  use Ecto.Migration + +  def change do +    create_if_not_exists table(:announcements, primary_key: false) do +      add(:id, :uuid, primary_key: true) +      add(:data, :map) +      add(:starts_at, :naive_datetime) +      add(:ends_at, :naive_datetime) +      add(:rendered, :map) + +      timestamps() +    end + +    create_if_not_exists table(:announcement_read_relationships) do +      add(:user_id, references(:users, type: :uuid, on_delete: :delete_all)) +      add(:announcement_id, references(:announcements, type: :uuid, on_delete: :delete_all)) + +      timestamps(updated_at: false) +    end + +    create_if_not_exists( +      unique_index(:announcement_read_relationships, [:user_id, :announcement_id]) +    ) +  end +end  | 
