summaryrefslogtreecommitdiff
path: root/db/migrate/20200424135319_create_nuget_dependency_link_metadata.rb
blob: 1043616a1c728ea82ea460fcad1ba0286f57a8b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# frozen_string_literal: true

class CreateNugetDependencyLinkMetadata < ActiveRecord::Migration[6.0]
  include Gitlab::Database::MigrationHelpers

  DOWNTIME = false

  disable_ddl_transaction!

  CONSTRAINT_NAME = 'packages_nuget_dependency_link_metadata_target_framework_constr'

  def up
    unless table_exists?(:packages_nuget_dependency_link_metadata)
      create_table :packages_nuget_dependency_link_metadata, id: false do |t|
        t.references :dependency_link, primary_key: true, default: nil, foreign_key: { to_table: :packages_dependency_links, on_delete: :cascade }, index: { name: 'index_packages_nuget_dl_metadata_on_dependency_link_id' }, type: :bigint
        t.text :target_framework, null: false
      end
    end

    add_text_limit :packages_nuget_dependency_link_metadata, :target_framework, 255, constraint_name: CONSTRAINT_NAME
  end

  def down
    drop_table :packages_nuget_dependency_link_metadata
  end
end