23 lines
689 B
Ruby
23 lines
689 B
Ruby
class CreateGpgKeySubkeys < ActiveRecord::Migration
|
|
DOWNTIME = false
|
|
|
|
def up
|
|
create_table :gpg_key_subkeys do |t|
|
|
t.references :gpg_key, null: false, index: true, foreign_key: { on_delete: :cascade }
|
|
|
|
t.binary :keyid
|
|
t.binary :fingerprint
|
|
|
|
t.index :keyid, unique: true, length: Gitlab::Database.mysql? ? 20 : nil
|
|
t.index :fingerprint, unique: true, length: Gitlab::Database.mysql? ? 20 : nil
|
|
end
|
|
|
|
add_reference :gpg_signatures, :gpg_key_subkey, index: true, foreign_key: { on_delete: :nullify }
|
|
end
|
|
|
|
def down
|
|
remove_reference(:gpg_signatures, :gpg_key_subkey, index: true, foreign_key: true)
|
|
|
|
drop_table :gpg_key_subkeys
|
|
end
|
|
end
|