ash_hq/priv/repo/migrations/20220324151218_migrate_resources7.exs
Zach Daniel 3c47194d55 WIP
2022-03-25 17:17:01 -04:00

82 lines
No EOL
2 KiB
Elixir

defmodule AshHq.Repo.Migrations.MigrateResources7 do
@moduledoc """
Updates resources based on their most recent snapshots.
This file was autogenerated with `mix ash_postgres.generate_migrations`
"""
use Ecto.Migration
def up do
create table(:options, primary_key: false) do
add :id, :uuid, null: false, primary_key: true
add :name, :text, null: false
add :type, :text, null: false
add :doc, :text
add :required, :boolean, null: false, default: false
add :default, :text
add :dsl_id, :uuid, null: false
end
create table(:dsls, primary_key: false) do
add :id, :uuid, null: false, primary_key: true
end
alter table(:options) do
modify :dsl_id, references(:dsls, column: :id, name: "options_dsl_id_fkey", type: :uuid)
end
alter table(:dsls) do
add :name, :text, null: false
add :doc, :text
add :examples, {:array, :text}
add :args, {:array, :text}
add :path, {:array, :text}
add :type, :text, null: false
add :library_version_id,
references(:library_versions,
column: :id,
name: "dsls_library_version_id_fkey",
type: :uuid
),
null: false
add :extension_id,
references(:extensions, column: :id, name: "dsls_extension_id_fkey", type: :uuid),
null: false
add :dsl_id, references(:dsls, column: :id, name: "dsls_dsl_id_fkey", type: :uuid)
end
end
def down do
drop constraint(:dsls, "dsls_dsl_id_fkey")
drop constraint(:dsls, "dsls_extension_id_fkey")
drop constraint(:dsls, "dsls_library_version_id_fkey")
alter table(:dsls) do
remove :dsl_id
remove :extension_id
remove :library_version_id
remove :type
remove :path
remove :args
remove :examples
remove :doc
remove :name
end
drop constraint(:options, "options_dsl_id_fkey")
alter table(:options) do
modify :dsl_id, :uuid
end
drop table(:dsls)
drop table(:options)
end
end