summaryrefslogtreecommitdiff
path: root/db/migrate/20191016220135_add_join_table_for_self_managed_prometheus_alert_issues.rb
blob: 68b448f88360914ab3c7ad82b0ff274e28b10abf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# frozen_string_literal: true

class AddJoinTableForSelfManagedPrometheusAlertIssues < ActiveRecord::Migration[5.2]
  # Set this constant to true if this migration requires downtime.
  DOWNTIME = false

  def change
    # Join table to Issues
    create_table :issues_self_managed_prometheus_alert_events, id: false do |t|
      t.references :issue, null: false,
        index: false, # Uses the index below
        foreign_key: { on_delete: :cascade }
      t.references :self_managed_prometheus_alert_event, null: false,
        index: { name: 'issue_id_issues_self_managed_rometheus_alert_events_index' },
        foreign_key: { on_delete: :cascade }

      t.timestamps_with_timezone
      t.index [:issue_id, :self_managed_prometheus_alert_event_id],
        unique: true, name: 'issue_id_self_managed_prometheus_alert_event_id_index'
    end
  end
end