Skip to content

Commit

Permalink
consolidate migrations
Browse files Browse the repository at this point in the history
  • Loading branch information
avonderluft committed Nov 19, 2024
1 parent 16c05ca commit 1302f3c
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 39 deletions.
30 changes: 27 additions & 3 deletions db/migrate/00_create_active_storage_tables.active_storage.rb
Original file line number Diff line number Diff line change
@@ -1,18 +1,22 @@
# This migration comes from active_storage (originally 20170806125915)
class CreateActiveStorageTables < ActiveRecord::Migration[5.2]
class CreateActiveStorageTables < ActiveRecord::Migration[6.0]
def change
create_table :active_storage_blobs do |t|
t.string :key, null: false
t.string :filename, null: false
t.string :content_type
t.string :service_name, null: false
t.text :metadata
t.bigint :byte_size, null: false
t.string :checksum, null: false
t.string :checksum, null: true
t.datetime :created_at, null: false

t.index [ :key ], unique: true
end

if configured_service = ActiveStorage::Blob.service.name
ActiveStorage::Blob.unscoped.update_all(service_name: configured_service)
end

create_table :active_storage_attachments do |t|
t.string :name, null: false
t.references :record, null: false, polymorphic: true, index: false
Expand All @@ -22,5 +26,25 @@ def change

t.index [ :record_type, :record_id, :name, :blob_id ], name: "index_active_storage_attachments_uniqueness", unique: true
end

create_table :active_storage_variant_records, id: primary_key_type, if_not_exists: true do |t|
t.belongs_to :blob, null: false, index: false, type: blobs_primary_key_type
t.string :variation_digest, null: false

t.index %i[ blob_id variation_digest ], name: "index_active_storage_variant_records_uniqueness", unique: true
t.foreign_key :active_storage_blobs, column: :blob_id
end
end

private
def primary_key_type
config = Rails.configuration.generators
config.options[config.orm][:primary_key_type] || :primary_key
end

def blobs_primary_key_type
pkey_name = connection.primary_key(:active_storage_blobs)
pkey_column = connection.columns(:active_storage_blobs).find { |c| c.name == pkey_name }
pkey_column.bigint? ? :bigint : pkey_column.type
end
end
1 change: 1 addition & 0 deletions db/migrate/01_create_cms.rb
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ def change
t.integer :site_id, null: false
t.string :label, null: false
t.string :identifier, null: false
t.boolean :markdown
t.text :content, limit: LIMIT
t.integer :position, null: false, default: 0
t.timestamps
Expand Down
31 changes: 0 additions & 31 deletions db/migrate/20241107190852_update_active_storage.rb

This file was deleted.

This file was deleted.

0 comments on commit 1302f3c

Please sign in to comment.